[Vorbis-dev] encode, decode and encode again

Ian Malone ibmalone at gmail.com
Mon Sep 11 04:22:39 PDT 2006


On 11/09/06, Aleksey Surkov <Aleksey_S at abbyy.com> wrote:
> (I've already posted this message month ago, but nobody answered, may be
> it was not delivered to newsgroup?)
>

It arrived.  I think there wasn't really enough detail to diagnose the
problem.

> Hello, All.
>
> I wrote an encoder-decoder based on example from OGG-Vorbis SDK.
> This encoder can encode a large amount of small WAV-files with equal
> parameters into one sound archive.
>
> Then I decode this sound archive back into large amount of small
> WAV-files.
>
> Theese files are different from source files, but each of them can be
> normally played by Windows.
>
> And now I can't correctly encode these decoded files into sound archive
> again.
>
> The behavior of encoder is the following:
>
> 1) it normally encodes first 10-20 files and after that the time of
> encoding for each file starts to grow The vorbis_analysis_blockout()
> function starts to return 0 (in normal mode it returns 1).
> The time of executing vorbis_analysis_buffer() function starts to grow
> (in normal mode this time is very small).
>
> It seems like the encoder processes vorbis_analysis_blockout() function
> only when the end-of-stream flag is set to 1 (at the end of the last
> file).
>
> 2) According to (1) the encoder hungs up when I'm trying to encode about
> 9000 files.
>
> 2) When I listen the resulting sound archive the first file is playing
> with artefacts.
>
> Does anybody know how can it be repaired?
>

Well, without the code we can't say much.  Since the problem occurs
with large numbers of files I'd suggest there's some kind of memory
leak somewhere, or some buffer is being filled up and never emptied.
Your problem with round trippping the files may be related or entirely
separate.  Are you sure the .wav files being produced at the
intermediate step are valid?

Final aside: this is just a test isn't it?  Round tripping audio through
the encode/decode is probably a bad idea.

-- 
imalone


More information about the Vorbis-dev mailing list