[Speex-dev] Vorbis-/Speex-Audio for Movie-Archiving

Hannes Hauswedell lists at soulrebel.in-berlin.de
Sun Apr 12 13:48:24 PDT 2009


Hi everyone,

I have been using vorbis for ages as audio codec for archiving movies and I 
have always been happy with it, but now I have been thinking about two things:

I) Multi-channel

Up until now I mostly encoded to stereo; now I am thinking of encoding more 
movies to 4.0 or 5.1. I heard that vorbis does not optimize for channels > 2, 
i.e. that 6 channels is just stereo*3. AAC is supposed to do this better...
Now I really digg vorbis, because its patent-free and grass-roots-developed ;) 
so this doesnt mean I am switching to aac, but I'd like to know whether this 
true or if its just FUD. 
And if it is true, how big do you think the compression advantage of aac5.1 is 
over vorbis5.1? If it is true, is someone working on changing this or is it 
low-priority?

II) Multi-language

I usually archive both the audio stream in original language and in my native 
language, but I always thought that a lot of space is wasted there, especially 
when going multi-channel for one or both languages. Wouldn't it be possible 
to:
* encode the audio stream minus the speech in vorbis 
* encode each language as speex
=> save a lot of space because 1*vorb+X*spx << X*vorb

That would of course require that,
a) a container and the players support this
b1) the language be available seperate of the other audio on DVD/BD/... 
OR
b2) an efficient algorithm be available for stripping language from background 
audio

concerning b1) is this not the case anyway? I at least got the impression when 
copying a DVD to .iso whithout one of its audio tracks, after which this track 
was still available but without speech.

concerning b2) I am sure there are intelligent things out there, but maybe a 
real simple thing would already work (note that I dont actually have a clue 
about audio encoding or speex in particular):

* the main vorbis as the "intersection" of all audio channels
* first speech-track in speex as "audio channel 1 - main vorbis"
* second speech-track in speex as "audio channel 2 - main vorbis" aso asf

When doing this, the speech-tracks of course wouldn't be clean language and 
the 'main audio-track' not completely free of language, but who cares, since 
the 'main-audio-track' is always played concurrently with one one of the 
speech-tracks. Of course speex would have to be able to efficiently encode 
language with a little mumble-jumble of other lanugages subtracted ;)

Has anyone ever thought about this or is it complete and utter nonsense?


Thanks for your time and of course for developing the best free audio-codecs!

Regards,
Hannes







More information about the Speex-dev mailing list