Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033 #ifndef __OGGZ_SEEK_H__
00034 #define __OGGZ_SEEK_H__
00035
00099 ogg_int64_t oggz_tell_units (OGGZ * oggz);
00100
00109 ogg_int64_t oggz_seek_units (OGGZ * oggz, ogg_int64_t units, int whence);
00110
00119 ogg_int64_t
00120 oggz_tell_granulepos (OGGZ * oggz);
00121
00134 oggz_off_t oggz_tell (OGGZ * oggz);
00135
00143 oggz_off_t oggz_seek (OGGZ * oggz, oggz_off_t offset, int whence);
00144
00145 #ifdef _UNIMPLEMENTED
00146 long oggz_seek_packets (OGGZ * oggz, long serialno, long packets, int whence);
00147 #endif
00148
00270 int oggz_get_granuleshift (OGGZ * oggz, long serialno);
00271
00284 int oggz_set_granuleshift (OGGZ * oggz, long serialno, int granuleshift);
00285
00298 int oggz_get_granulerate (OGGZ * oggz, long serialno,
00299 ogg_int64_t * granulerate_n,
00300 ogg_int64_t * granulerate_d);
00301
00315 int oggz_set_granulerate (OGGZ * oggz, long serialno,
00316 ogg_int64_t granule_rate_numerator,
00317 ogg_int64_t granule_rate_denominator);
00318
00336 typedef ogg_int64_t (*OggzMetric) (OGGZ * oggz, long serialno,
00337 ogg_int64_t granulepos, void * user_data);
00338
00361 int oggz_set_metric (OGGZ * oggz, long serialno, OggzMetric metric,
00362 void * user_data);
00363
00364 #ifdef _UNIMPLEMENTED
00365
00421 typedef int (*OggzOrder) (OGGZ * oggz, ogg_packet * op, void * target,
00422 void * user_data);
00428 int oggz_set_order (OGGZ * oggz, long serialno, OggzOrder order,
00429 void * user_data);
00430
00431 long oggz_seek_byorder (OGGZ * oggz, void * target);
00432
00433 #endif
00434
00448 int oggz_set_data_start (OGGZ * oggz, oggz_off_t offset);
00452 #endif