[gst-devel] ogg and friends

Marc VanDaele Marc_VanDaele at Jabil.com
Mon May 24 02:36:04 CEST 2004


> - "Vorbis" and "Theora" are codec formats.  
> 
> codecs take in raw data (video frames, chunks of audio samples) and
> produce encoded data in packets.  "Vorbis" and "Theora" are 
> codecs made
> by xiph. To be able to decode encoded data, decoders for "Vorbis" and
> "Theora" need to get data in the same packets as they were encoded.
> (This means, a file dump of packets produced by "Vorbis" or "Theora"
> encoders cannot be played back - since you lost the packet boundary
> information).

FYI: the same is true for mpeg-4 AAC/Celp in a .mp4 file.
[I'm not sure anymore about exact terminology]
One mpeg-4 audio "packet" (as stored in the mp4 file) can contain multiple
"frames".
Frames within a packet are bit-aligned,
frames accross packet boundaries are always byte aligned.
The bit-alignment is one of the differences between mpeg-4 and mpeg-2 AAC
IIRC.

This implied that you couldn't demux an mp4 file and store the audio-data in
an elementary .mp4a file
because this .mp4a file lacked the packet-boundary information.

Note: the above was true at some point in the standardization; there were
some modifications planned; eg. maybe ISMA removed the possibility to have
multiple frames in one packet.

Marc





More information about the gstreamer-devel mailing list