Vorbisfile documentation |
vorbisfile version 1.68 - 20030307 |
declared in "vorbis/vorbisfile.h"
The OggVorbis_File structure defines an Ogg Vorbis file.
This structure is used in all libvorbisfile routines. Before it can be used, it must be initialized by ov_open() or ov_open_callbacks().
After use, the OggVorbis_File structure must be deallocated with a call to ov_clear().
Once a file or data source is opened successfully by libvorbisfile (using ov_open() or ov_open_callbacks()), it is owned by libvorbisfile. The file should not be used by any other applications or functions outside of the libvorbisfile API. The file must not be closed directly by the application at any time after a successful open; libvorbisfile expects to close the file within ov_clear().
If the call to ov_open() or ov_open_callbacks() fails,
libvorbisfile does not assume ownership of the file and the
application is expected to close it if necessary.
typedef struct { void *datasource; /* Pointer to a FILE *, etc. */ int seekable; ogg_int64_t offset; ogg_int64_t end; ogg_sync_state oy; /* If the FILE handle isn't seekable (eg, a pipe), only the current stream appears */ int links; ogg_int64_t *offsets; ogg_int64_t *dataoffsets; long *serialnos; ogg_int64_t *pcmlengths; vorbis_info *vi; vorbis_comment *vc; /* Decoding working state local storage */ ogg_int64_t pcm_offset; int ready_state; long current_serialno; int current_link; ogg_int64_t bittrack; ogg_int64_t samptrack; ogg_stream_state os; /* take physical pages, weld into a logical stream of packets */ vorbis_dsp_state vd; /* central working state for the packet->PCM decoder */ vorbis_block vb; /* local working space for packet->PCM decode */ ov_callbacks callbacks; } OggVorbis_File; |
copyright © 2003 Xiph.org |
|
Vorbisfile documentation |
vorbisfile version 1.68 - 20030307 |