[Vorbis-dev] Semantics of chaining...

Tuomo Latto djv at mbnet.fi
Mon Apr 11 05:01:21 PDT 2005


illiminable wrote:
> So some player somes along and sees a file with 2x 1 minute chains... should 
> it display the duration as 2mins and just play over it. Or should it play 
> showing the duration as 1minute for 1minute, then when it hits the chain, 
> reset its progress bar to zero, and show the duration as 1minute again for 
> the next chain. And then depending how the playlist is displayed, how can 
> the user skip between the chains ?
> 
> How can a player know the difference between these two meanings ?
> 
> When you have control of the player, it's not that big a deal since you can 
> do whatever you want, or let the user decide. But in my case, my main 
> targetted player (WMP) is one i have extremely limited control over.
> 
> When such a file is put in a playlist, should it display as one track, a 
> file with chapters (if that's possible), or multiple tracks.
> 
> What should be considered the default interpretation ?

Well, fb2k seems to treat a chained file as separate tracks.
At least what comes to playing it and showing it on the playlist, that is.
I haven't tried doing anything else and am not going to, since I prefer
separate files.

IMHO treating them separate, yet something like a playlist, is a good default
interpretation, since there usually is some sort of reason why they were
originally separated.
That said, dumb players not supporting playlists nor allowing user interaction,
like the ones used in games, should probably just play it completely from
beginning of the first stream to the end of the last stream.


> One thing i thought about to resolve the ambiguity, is use one of the unused 
> flags to indicate "chain seperation" on a BOS page. In other words if the 
> flag is set on the bos page of any subsequent chain, it is treated as a 
> seperate entity rather than a continuation of a previous one.
 >
> Any other ideas on how to best handle these cases in a player ?

I admit I know nothing about ...well, just about everything really.

Depends on the purpose of the player, I guess.

I think it is safe to assume that each chained stream is somehow a distinct
part of the whole (granted, it doesn't have to make any sense separately),
like a different chapter or track (audio) or even a different movie scene.
This, of course, all depends on the actual media and the creator of the
composition.

There are basically two reasons for creating chained streams rather than
using a single stream: Either 1) the separation was made for the user to take 
advantage of (if possible), or 2) the separation was made due to some
limitations or to gain advantages during the production.
My opinion is that assuming the former case would be the right thing to do.
The only case I can think of that this could somehow be wrong is when the reason
is the latter and the file consists of many, many streams so that it actually
ends up flooding the playlist with many, many useless entries.
However, in that case, I think one could successfully argue that the
"wrongness", so to speak, is in fact inside the head of the creator of such
abomination.

Sure, there could be a mix of these two types of separation, but to completely
cover all the cases, one would be required to implement a multilevel, 
multidimensional semantics for the separation labels.
In whatever special case one would need this sort of thing, it could probably
be more easily implemented using some other way.
I don't see the reason for marking the streams with continuation information as 
such.


-- 
Tuomo

... Woman was God's second mistake



More information about the Vorbis-dev mailing list