[gst-devel] What are buffers?

Richard Boulton richard at tartarus.org
Sun Mar 17 14:16:03 CET 2002

On Thu, 2002-03-14 at 00:49, Benjamin Otte wrote:
> e) we need clear definitions about the offset information
> - Is this information optional, should have (my vote) or even must have?
I agree with "should have".  At least some fields will be meaningless in
some situations: if there is a possible meaning for them, it should be
present, though.

> - What is this information representing? (original offset vs offset in
> modified stream - eg after Mp3 decode; are timestamps always increasing
> or can a seek to the start of the stream reset the timestamp (it should))
I agree: if a seek happens, the offsets should reflect that.

> - Do we need all 3 (time/byte/frame offset) or do we need more or less
> than that?
I'm not certain what they each mean, so can't say.

I'm guessing offset is the offset in bytes (as opposed to samples, or
similar) from the "start of the stream", or at least some arbitrary
origin?  Or is it the number of bytes processed by the element?

Time, I assume is again the time at which the buffer starts (as opposed
to ends, or is at middle), referring to some arbitrary origin.  With
something like osssrc, successive buffers will have increasing
timestamps.  These probably shouldn't be calculated from the offset and
frequency, but rather from the time the data is actually pulled from the
card; otherwise, over time, a gap could build up.

Frame, I have no idea about.  For an audio stream, this may be useless. 
Or meaningless after it's decoded from an mp3, or similar.

I think a concrete decision is needed: probably any decision with clear
documentation is better than none.


More information about the gstreamer-devel mailing list