You need to open the file with the OGGZ_AUTO flag set:
Oggz will silently parse known codec headers and associate metrics appropriately; if you attempt to seek before you have received all b_o_s pages, Oggz will not have had a chance to parse the codec headers and associate metrics. It is safe to seek once you have received a packet with b_o_s == 0; see the Ogg basics section for more details.
Functions | |
ogg_int64_t | oggz_tell_units (OGGZ *oggz) |
Query the current offset in milliseconds, or custom units as specified by a Metric function you have provided. | |
ogg_int64_t | oggz_seek_units (OGGZ *oggz, ogg_int64_t units, int whence) |
Seek to an offset in milliseconds, or custom units as specified by a Metric function you have provided. | |
ogg_int64_t | oggz_tell_granulepos (OGGZ *oggz) |
Provide the exact stored granulepos (from the page header) if relevant to the current packet, or a constructed granulepos if the stored granulepos does not belong to this packet, or -1 if this codec does not have support for granulepos interpolation. | |
oggz_off_t | oggz_tell (OGGZ *oggz) |
Query the file offset in bytes corresponding to the data read. | |
oggz_off_t | oggz_seek (OGGZ *oggz, oggz_off_t offset, int whence) |
Seek to a specific byte offset. |
oggz_off_t oggz_seek | ( | OGGZ * | oggz, | |
oggz_off_t | offset, | |||
int | whence | |||
) |
Seek to a specific byte offset.
oggz | An OGGZ handle | |
offset | a byte offset | |
whence | As defined in <stdio.h>: SEEK_SET, SEEK_CUR or SEEK_END |
ogg_int64_t oggz_seek_units | ( | OGGZ * | oggz, | |
ogg_int64_t | units, | |||
int | whence | |||
) |
Seek to an offset in milliseconds, or custom units as specified by a Metric function you have provided.
oggz | An OGGZ handle | |
units | A number of milliseconds, or custom units | |
whence | As defined in <stdio.h>: SEEK_SET, SEEK_CUR or SEEK_END |
oggz_off_t oggz_tell | ( | OGGZ * | oggz | ) |
Query the file offset in bytes corresponding to the data read.
oggz | An OGGZ handle |
ogg_int64_t oggz_tell_granulepos | ( | OGGZ * | oggz | ) |
Provide the exact stored granulepos (from the page header) if relevant to the current packet, or a constructed granulepos if the stored granulepos does not belong to this packet, or -1 if this codec does not have support for granulepos interpolation.
oggz | An OGGZ handle |
ogg_int64_t oggz_tell_units | ( | OGGZ * | oggz | ) |
Query the current offset in milliseconds, or custom units as specified by a Metric function you have provided.
oggz | An OGGZ handle |
OGGZ_ERR_BAD_OGGZ | oggz does not refer to an existing OGGZ | |
OGGZ_ERR_INVALID | Operation not suitable for this OGGZ |