mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-24 02:31:03 +00:00
ext/ogg/gstoggmux.c: Oggmux sucks.
Original commit message from CVS: * ext/ogg/gstoggmux.c: (gst_ogg_mux_queue_pads): Oggmux sucks. Make it suck slightly less by writing out the final page. Still can't encode a vorbis-in-ogg file correctly, though.
This commit is contained in:
parent
1f44430b48
commit
b600beec9d
2 changed files with 24 additions and 1 deletions
|
@ -1,3 +1,10 @@
|
||||||
|
2006-04-03 Michael Smith <msmith@fluendo.com>
|
||||||
|
|
||||||
|
* ext/ogg/gstoggmux.c: (gst_ogg_mux_queue_pads):
|
||||||
|
Oggmux sucks.
|
||||||
|
Make it suck slightly less by writing out the final page.
|
||||||
|
Still can't encode a vorbis-in-ogg file correctly, though.
|
||||||
|
|
||||||
2006-04-03 Andy Wingo <wingo@pobox.com>
|
2006-04-03 Andy Wingo <wingo@pobox.com>
|
||||||
|
|
||||||
* ext/theora/theoraparse.c (theora_parse_drain_queue): Um, remove
|
* ext/theora/theoraparse.c (theora_parse_drain_queue): Um, remove
|
||||||
|
|
|
@ -768,7 +768,23 @@ gst_ogg_mux_queue_pads (GstOggMux * ogg_mux)
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
GST_DEBUG_OBJECT (data->pad, "EOS on pad");
|
GST_DEBUG_OBJECT (data->pad, "EOS on pad");
|
||||||
pad->eos = TRUE;
|
if (!pad->eos) {
|
||||||
|
ogg_page page;
|
||||||
|
GstFlowReturn ret;
|
||||||
|
|
||||||
|
/* Just gone to EOS. Flush existing page(s) */
|
||||||
|
pad->eos = TRUE;
|
||||||
|
|
||||||
|
while (ogg_stream_flush (&pad->stream, &page)) {
|
||||||
|
/* Place page into the per-pad queue */
|
||||||
|
ret = gst_ogg_mux_pad_queue_page (ogg_mux, pad, &page,
|
||||||
|
pad->first_delta);
|
||||||
|
/* increment the page number counter */
|
||||||
|
pad->pageno++;
|
||||||
|
/* mark other pages as delta */
|
||||||
|
pad->first_delta = TRUE;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
pad->buffer = buf;
|
pad->buffer = buf;
|
||||||
|
|
Loading…
Reference in a new issue