39 #define MAX_PAGE_SIZE 65307
40 #define DECODER_BUFFER_SIZE MAX_PAGE_SIZE
81 for (i = 0; i < ogg->
nstreams; i++) {
135 for (i = 0; i < ogg->
nstreams; i++) {
149 if (start_pos <= s->internal->data_offset) {
167 for (i = 0; ogg_codecs[i]; i++)
170 return ogg_codecs[i];
198 for (i = 0; i < ogg->
nstreams; i++) {
224 memset(os, 0,
sizeof(*os));
245 "in between Ogg context save/restore operations.\n");
255 memset(os, 0,
sizeof(*os));
328 if (sync[sp & 3] ==
'O' &&
329 sync[(sp + 1) & 3] ==
'g' &&
330 sync[(sp + 2) & 3] ==
'g' && sync[(sp + 3) & 3] ==
'S')
394 for (i = 0; i <
nsegs; i++)
473 av_dlog(s,
"ogg_packet: idx=%d pstart=%d psize=%d segp=%d nsegs=%d\n",
501 if (!complete && os->
segp == os->
nsegs) {
514 "Page at %"PRId64
" is missing granule\n",
536 for (i = 0; i < ogg->
nstreams; i++) {
657 for (i = 0; i < ogg->
nstreams; i++) {
690 for (i = 0; i < ogg->
nstreams; i++) {
698 "Headers mismatch for stream %d: "
699 "expected %d received %d.\n",
772 int64_t fpos,
pts, dts;
782 ret =
ogg_packet(s, &idx, &pstart, &psize, &fpos);
785 }
while (idx < 0 || !s->streams[idx]);
803 memcpy(pkt->
data, os->
buf + pstart, psize);
840 int64_t *pos_arg, int64_t pos_limit)
852 && !
ogg_packet(s, &i, &pstart, &psize, pos_arg)) {
853 if (i == stream_index) {
881 int64_t timestamp,
int flags)
899 os = ogg->
streams + stream_index;
907 if (!memcmp(
"OggS", p->
buf, 5) && p->
buf[5] <= 0x7)
915 .priv_data_size =
sizeof(
struct ogg),