# oggz_read.h File Reference

Interfaces for reading Ogg files and streams. More...

Go to the source code of this file.

## Typedefs
typedef int(* | OggzReadPacket )(OGGZ *oggz, ogg_packet *op, long serialno, void *user_data)
| This is the signature of a callback which you must provide for Oggz to call whenever it finds a new packet in the Ogg stream associated with oggz.
typedef int(* | OggzReadPage )(OGGZ *oggz, const ogg_page *og, long serialno, void *user_data)
| This is the signature of a callback which you must provide for Oggz to call whenever it finds a new page in the Ogg stream associated with oggz.
## Functions
int | oggz_set_read_callback (OGGZ *oggz, long serialno, OggzReadPacket read_packet, void *user_data)
| Set a callback for Oggz to call when a new Ogg packet is found in the stream.
int | oggz_set_read_page (OGGZ *oggz, long serialno, OggzReadPage read_page, void *user_data)
| Set a callback for Oggz to call when a new Ogg page is found in the stream.
long | oggz_read (OGGZ *oggz, long n)
| Read n bytes into oggz, calling any read callbacks on the fly.
long | oggz_read_input (OGGZ *oggz, unsigned char *buf, long n)
| Input data into oggz.
int | oggz_purge (OGGZ *oggz)
| Erase any input buffered in Oggz.
OggzStreamContent | oggz_stream_get_content (OGGZ *oggz, long serialno)
| Determine the content type of the oggz stream referred to by serialno.
const char * | oggz_stream_get_content_type (OGGZ *oggz, long serialno)
| Return human-readable string representation of content type of oggz stream referred to by serialno.
int | oggz_stream_get_numheaders (OGGZ *oggz, long serialno)
| Determine the number of headers of the oggz stream referred to by serialno.

## Detailed Description

Interfaces for reading Ogg files and streams.

## Function Documentation

int oggz_purge | ( | OGGZ * | oggz | ) |

Erase any input buffered in Oggz.

This discards any input read from the underlying IO system but not yet delivered as ogg_packets.

Parameters:

  | oggz | An OGGZ handle

Return values:

  | 0 | Success
  | OGGZ_ERR_SYSTEM | Error seeking on underlying IO.
  | OGGZ_ERR_BAD_OGGZ | oggz does not refer to an existing OGGZ
  | OGGZ_ERR_INVALID | Operation not suitable for this OGGZ

OggzStreamContent oggz_stream_get_content | ( | OGGZ * | oggz,
|  | long | serialno |
| ) |  |  |

Determine the content type of the oggz stream referred to by serialno.

Parameters:

  | oggz | An OGGZ handle
  | serialno | An ogg stream serialno

Return values:

  | OGGZ_CONTENT_THEORA..OGGZ_CONTENT_UNKNOWN | content successfully identified
  | OGGZ_ERR_BAD_OGGZ | oggz does not refer to an existing OGGZ
  | OGGZ_ERR_BAD_SERIALNO | serialno does not refer to an existing stream

const char* oggz_stream_get_content_type | ( | OGGZ * | oggz,
|  | long | serialno |
| ) |  |  |

Return human-readable string representation of content type of oggz stream referred to by serialno.

Parameters:

  | oggz | An OGGZ handle
  | serialno | An ogg stream serialno

Return values:

  | string | the name of the content type
  | NULL | oggz or serialno invalid

int oggz_stream_get_numheaders | ( | OGGZ * | oggz,
|  | long | serialno |
| ) |  |  |

Determine the number of headers of the oggz stream referred to by serialno.

Parameters:

  | oggz | An OGGZ handle
  | serialno | An ogg stream serialno

Return values:

  | OGGZ_CONTENT_THEORA..OGGZ_CONTENT_UNKNOWN | content successfully identified
  | OGGZ_ERR_BAD_OGGZ | oggz does not refer to an existing OGGZ
  | OGGZ_ERR_BAD_SERIALNO | serialno does not refer to an existing stream