Browse Source

oggenc: Move ogg_write_pages up above ogg_write_header

Signed-off-by: Martin Storsjö <martin@martin.st>
tags/n2.3
Andrew Kelley Martin Storsjö 11 years ago
parent
commit
1d3eb0b573
1 changed files with 22 additions and 22 deletions
  1. +22
    -22
      libavformat/oggenc.c

+ 22
- 22
libavformat/oggenc.c View File

@@ -388,6 +388,28 @@ static int ogg_build_opus_headers(AVCodecContext *avctx,
return 0;
}

static void ogg_write_pages(AVFormatContext *s, int flush)
{
OGGContext *ogg = s->priv_data;
OGGPageList *next, *p;

if (!ogg->page_list)
return;

for (p = ogg->page_list; p; ) {
OGGStreamContext *oggstream =
s->streams[p->page.stream_index]->priv_data;
if (oggstream->page_count < 2 && !flush)
break;
ogg_write_page(s, &p->page,
flush && oggstream->page_count == 1 ? 4 : 0); // eos
next = p->next;
av_freep(&p);
p = next;
}
ogg->page_list = p;
}

static int ogg_write_header(AVFormatContext *s)
{
OGGContext *ogg = s->priv_data;
@@ -522,28 +544,6 @@ static int ogg_write_header(AVFormatContext *s)
return 0;
}

static void ogg_write_pages(AVFormatContext *s, int flush)
{
OGGContext *ogg = s->priv_data;
OGGPageList *next, *p;

if (!ogg->page_list)
return;

for (p = ogg->page_list; p; ) {
OGGStreamContext *oggstream =
s->streams[p->page.stream_index]->priv_data;
if (oggstream->page_count < 2 && !flush)
break;
ogg_write_page(s, &p->page,
flush && oggstream->page_count == 1 ? 4 : 0); // eos
next = p->next;
av_freep(&p);
p = next;
}
ogg->page_list = p;
}

static int ogg_write_packet(AVFormatContext *s, AVPacket *pkt)
{
AVStream *st = s->streams[pkt->stream_index];


Loading…
Cancel
Save