cannam@86: cannam@86: cannam@86:
cannam@86:| cannam@86:libogg documentation | cannam@86:libogg release 1.3.0 - 20110804 | 
Libogg contains a set of functions used in the decoding process. cannam@86:
cannam@86: All the libogg specific functions are declared in "ogg/ogg.h". cannam@86:
cannam@86:
Decoding is based around the ogg synchronization layer. The ogg_sync_state struct coordinates between incoming data and the decoder. We read data into the synchronization layer, submit the data to the stream, and output raw packets to the decoder. cannam@86:
Decoding through the Ogg layer follows a specific logical sequence. A read loop follows these logical steps: cannam@86:
In practice, streams are more complex, and Ogg also must handle headers, incomplete or dropped pages, and other errors in input.
cannam@86: 
cannam@86: 
cannam@86: 
| functioncannam@86: | purposecannam@86: | |
| ogg_sync_initcannam@86: | Initializes an Ogg bitstream.cannam@86: | |
| ogg_sync_clearcannam@86: | Clears the status information from the synchronization struct. | cannam@86: | 
| ogg_sync_resetcannam@86: | Resets the synchronization status to initial values.cannam@86: | |
| ogg_sync_destroycannam@86: | Frees the synchronization struct.cannam@86: | |
| ogg_sync_checkcannam@86: | Check for asynchronous errors.cannam@86: | |
| ogg_sync_buffercannam@86: | Exposes a buffer from the synchronization layer in order to read data.cannam@86: | |
| ogg_sync_wrotecannam@86: | Tells the synchronization layer how many bytes were written into the buffer.cannam@86: | |
| ogg_sync_pageseekcannam@86: | Finds the borders of pages and resynchronizes the stream.cannam@86: | |
| ogg_sync_pageoutcannam@86: | Outputs a page from the synchronization layer.cannam@86: | |
| ogg_stream_pageincannam@86: | Submits a complete page to the stream layer.cannam@86: | |
| ogg_stream_packetoutcannam@86: | Outputs a packet to the codec-specific decoding engine.cannam@86: | |
| ogg_stream_packetpeekcannam@86: | Provides access to the next packet in the bitstream without cannam@86: advancing decoding.cannam@86: | 
| cannam@86:copyright © 2000-2011 Xiph.Org | cannam@86: | 
| cannam@86:libogg documentation | cannam@86:libogg release 1.3.0 - 20110804 |