Lines Matching refs:ogg

68     struct ogg *ogg = s->priv_data;
69 struct ogg_stream *stream = &ogg->streams[i];
84 struct ogg *ogg = s->priv_data;
86 av_malloc(sizeof(*ost) + (ogg->nstreams - 1) * sizeof(*ogg->streams));
94 ost->curidx = ogg->curidx;
95 ost->next = ogg->state;
96 ost->nstreams = ogg->nstreams;
97 memcpy(ost->streams, ogg->streams, ogg->nstreams * sizeof(*ogg->streams));
99 for (i = 0; i < ogg->nstreams; i++) {
100 struct ogg_stream *os = ogg->streams + i;
110 ogg->state = ost;
120 struct ogg *ogg = s->priv_data;
122 struct ogg_state *ost = ogg->state;
128 ogg->state = ost->next;
130 for (i = 0; i < ogg->nstreams; i++) {
131 struct ogg_stream *stream = &ogg->streams[i];
141 ogg->page_pos = -1;
142 ogg->curidx = ost->curidx;
143 ogg->nstreams = ost->nstreams;
144 if ((err = av_reallocp_array(&ogg->streams, ogg->nstreams,
145 sizeof(*ogg->streams))) < 0) {
146 ogg->nstreams = 0;
149 memcpy(ogg->streams, ost->streams,
150 ost->nstreams * sizeof(*ogg->streams));
159 struct ogg *ogg = s->priv_data;
163 for (i = 0; i < ogg->nstreams; i++) {
164 struct ogg_stream *os = ogg->streams + i;
186 ogg->page_pos = -1;
187 ogg->curidx = -1;
212 struct ogg *ogg = s->priv_data;
217 if (ogg->nstreams != 1) {
218 avpriv_report_missing_feature(s, "Changing stream parameters in multistream ogg");
229 os = &ogg->streams[0];
250 struct ogg *ogg = s->priv_data;
251 int idx = ogg->nstreams;
255 if (ogg->state) {
262 if (!(os = av_realloc_array(ogg->streams, ogg->nstreams + 1,
263 sizeof(*ogg->streams))))
265 ogg->streams = os;
266 os = ogg->streams + idx;
285 ogg->nstreams++;
289 static int data_packets_seen(const struct ogg *ogg)
293 for (i = 0; i < ogg->nstreams; i++)
294 if (ogg->streams[i].got_data)
316 struct ogg *ogg = s->priv_data;
343 if(!i && (bc->seekable & AVIO_SEEKABLE_NORMAL) && ogg->page_pos > 0) {
345 avio_seek(bc, ogg->page_pos+4, SEEK_SET);
346 ogg->page_pos = -1;
390 idx = ogg_find_stream(ogg, serial);
392 os = ogg->streams + idx;
432 if (data_packets_seen(ogg))
443 os = ogg->streams + idx;
455 ogg->page_pos = page_pos;
501 struct ogg *ogg = s->priv_data;
507 av_log(s, AV_LOG_TRACE, "ogg_packet: curidx=%i\n", ogg->curidx);
512 idx = ogg->curidx;
520 os = ogg->streams + idx;
551 ogg->curidx = -1;
566 ogg->curidx = idx;
582 ogg->headers = 1;
589 for (i = 0; i < ogg->nstreams; i++) {
590 struct ogg_stream *cur_os = ogg->streams + i;
636 ogg->curidx = -1;
643 struct ogg *ogg = s->priv_data;
664 ogg->page_pos = -1;
667 if (i >= 0 && ogg->streams[i].granule != -1 && ogg->streams[i].granule != 0 &&
668 ogg->streams[i].codec) {
670 ogg_gptopts(s, i, ogg->streams[i].granule, NULL);
673 streams_left-= (ogg->streams[i].got_start==-1);
674 ogg->streams[i].got_start= 1;
675 } else if(!ogg->streams[i].got_start) {
676 ogg->streams[i].got_start= -1;
696 if (pts != AV_NOPTS_VALUE && s->streams[i]->start_time == AV_NOPTS_VALUE && !ogg->streams[i].got_start) {
698 ogg->streams[i].got_start= 1;
700 }else if(s->streams[i]->start_time != AV_NOPTS_VALUE && !ogg->streams[i].got_start) {
701 ogg->streams[i].got_start= 1;
712 struct ogg *ogg = s->priv_data;
715 for (i = 0; i < ogg->nstreams; i++) {
719 ogg->nstreams = 0;
721 av_freep(&ogg->streams);
727 struct ogg *ogg = s->priv_data;
730 ogg->curidx = -1;
737 } while (!ogg->headers);
740 for (i = 0; i < ogg->nstreams; i++) {
741 struct ogg_stream *os = ogg->streams + i;
743 if (ogg->streams[i].header < 0) {
745 ogg->streams[i].codec = NULL;
746 av_freep(&ogg->streams[i].private);
770 struct ogg *ogg = s->priv_data;
771 struct ogg_stream *os = ogg->streams + idx;
800 struct ogg *ogg = s->priv_data;
801 struct ogg_stream *os = ogg->streams + idx;
821 struct ogg *ogg;
832 //Get an ogg packet
840 ogg = s->priv_data;
841 os = ogg->streams + idx;
892 struct ogg *ogg = s->priv_data;
904 struct ogg_stream *os = ogg->streams + stream_index;
933 struct ogg *ogg = s->priv_data;
934 struct ogg_stream *os = ogg->streams + stream_index;
937 av_assert0(stream_index < ogg->nstreams);
950 os = ogg->streams + stream_index;
964 .name = "ogg",
966 .priv_data_size = sizeof(struct ogg),
974 .extensions = "ogg",