equal
deleted
inserted
replaced
29 typedef struct vorbis_info{ |
29 typedef struct vorbis_info{ |
30 int version; |
30 int version; |
31 int channels; |
31 int channels; |
32 long rate; |
32 long rate; |
33 /* The below bitrate declarations are *hints*. |
33 /* The below bitrate declarations are *hints*. |
34 Combinations of the three values carry the following implications: |
34 Combinations of the three values carry the following implications: all three set to the same value: implies a fixed rate bitstream |
35 all three set to the same value: implies a fixed rate bitstream |
|
36 only nominal set: implies a VBR stream that averages the nominal bitrate. No hard upper/lower limit |
35 only nominal set: implies a VBR stream that averages the nominal bitrate. No hard upper/lower limit |
37 upper and or lower set: implies a VBR bitstream that obeys the bitrate limits. nominal may also be set to give a nominal rate. |
36 upper and or lower set: implies a VBR bitstream that obeys the bitrate limits. nominal may also be set to give a nominal rate. |
38 none set: the coder does not care to speculate. */ |
37 none set: the coder does not care to speculate. */ |
39 long bitrate_upper; |
38 long bitrate_upper; |
40 long bitrate_nominal; |
39 long bitrate_nominal; |
52 typedef struct { |
51 typedef struct { |
53 unsigned char *body_data; /* bytes from packet bodies */ |
52 unsigned char *body_data; /* bytes from packet bodies */ |
54 long body_storage; /* storage elements allocated */ |
53 long body_storage; /* storage elements allocated */ |
55 long body_fill; /* elements stored; fill mark */ |
54 long body_fill; /* elements stored; fill mark */ |
56 long body_returned; /* elements of fill returned */ |
55 long body_returned; /* elements of fill returned */ |
57 int *lacing_vals; /* The values that will go to the segment table */ |
56 int *lacing_vals; /* The values that will go to the segment table */ |
58 ogg_int64_t *granule_vals; |
57 ogg_int64_t *granule_vals; |
59 /* granulepos values for headers. Not compact |
58 /* granulepos values for headers. Not compact this way, but it is simple coupled to the lacing fifo */ |
60 this way, but it is simple coupled to the lacing fifo */ |
|
61 long lacing_storage; |
59 long lacing_storage; |
62 long lacing_fill; |
60 long lacing_fill; |
63 long lacing_packet; |
61 long lacing_packet; |
64 long lacing_returned; |
62 long lacing_returned; |
65 unsigned char header[282]; /* working space for header encode */ |
63 unsigned char header[282]; /* working space for header encode */ |
170 extern ogg_int64_t ov_pcm_total(OggVorbis_File *vf,int i); |
168 extern ogg_int64_t ov_pcm_total(OggVorbis_File *vf,int i); |
171 extern long ov_read(OggVorbis_File *vf,char *buffer,int length,int bigendianp,int word,int sgned,int *bitstream); |
169 extern long ov_read(OggVorbis_File *vf,char *buffer,int length,int bigendianp,int word,int sgned,int *bitstream); |
172 extern vorbis_info *ov_info(OggVorbis_File *vf,int link); |
170 extern vorbis_info *ov_info(OggVorbis_File *vf,int link); |
173 extern vorbis_comment *ov_comment(OggVorbis_File *f, int num); |
171 extern vorbis_comment *ov_comment(OggVorbis_File *f, int num); |
174 extern int ov_clear(OggVorbis_File *vf); |
172 extern int ov_clear(OggVorbis_File *vf); |
|
173 extern int ov_open_callbacks(void *datasource, OggVorbis_File *vf, char *initial, long ibytes, ov_callbacks callbacks); |
175 |
174 |
176 #endif /*_OGGVORBIS_H*/ |
175 #endif /*_OGGVORBIS_H*/ |