[Vorbis-dev] Mapping = 1 Ambisonic Vorbis flag

Sampo Syreeni decoy at iki.fi
Thu Sep 11 17:52:57 PDT 2008


On 2008-09-11, Oliver Oli wrote:

>> The sensible way to do mixed modes like Ambi with dedicated CF 
>> speaker channel is to have the extra channel and its metadata in a 
>> separate Ogg stream. This way, Vorbis Ambi & AmbiDecLib have a clean 
>> interface and only deal with Ambi type signals.
>
> I have to agree. Sometimes it's hard to see the obvious and simple 
> solution.

First of all, I do *not* want to get in the way of a simple, easily 
adopted solution. Even if such economies shoot down every bit of clue 
I've exhibited.

But I still have to note that the above reasoning falls short of the 
relevant practicalities. Second, even if you would like to do mixed 
setups using multiple Ogg streams, you would still need some way of 
indicating what each of those streams mean. Currently the only 
comprehensive way to indicate something like that is OggPCM channel 
maps, or some of their subsets.

Third, Richard Lee's argument about ambisonic channel metadata carries 
over to channel semantics in general: you need to know what each channel 
means from the word go, so channel mappings need to be present in the 
codec initialisation headers, and not, say, in Skeleton. Otherwise we're 
going to experience delay before the channels can be played properly, 
which isn't going to be appreciated by the better part of people who are 
used to fast synch in DVDs, big screen movies, and indeed the other 
container formats.

And fourth, carrying parts of a single multichannel soundtrack in 
different Ogg streams seems dubious to me. After all, a multichannel 
soundtrack is an indivisible whole: if we exclude a given channel, 
that'd usually mean that in the mastering stage the whole thing would 
have to be rethough. That is, a multichannel audio stream is 
*fundamentally* an integral unit; you cannot just treat any piece of it 
as separate from the whole. If you then encode it as multiple separate 
streams, you just invite a slew of compatibility issues; especially 
since inter-stream binds via Skeleton or similar metadata are mostly 
optional in the Ogg container design.

So, while I *do* undertand (and perhaps even support) the idea that the 
ambisonic mapping in Vorbis should be as simple as possible, I *still* 
think the above reasoning for it is gravely mistaken.
-- 
Sampo Syreeni, aka decoy - decoy at iki.fi, http://decoy.iki.fi/front
+358-50-5756111, 025E D175 ABE5 027C 9494 EEB0 E090 8BA9 0509 85C2


More information about the Vorbis-dev mailing list