diff --git a/ChangeLog b/ChangeLog index 5faaf24e3d..fa7522d264 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2006-11-23 Michael Smith + + * ext/ogg/gstoggmux.c: (gst_ogg_mux_process_best_pad): + If our incoming buffer is marked as DISCONT, then increment the page + number (so that the discontinuity is marked in the final ogg + bitstream) and flush the previous page. + 2006-11-22 Michael Smith * ext/theora/gsttheoraenc.h: diff --git a/ext/ogg/gstoggmux.c b/ext/ogg/gstoggmux.c index 50ac806469..5cae445148 100644 --- a/ext/ogg/gstoggmux.c +++ b/ext/ogg/gstoggmux.c @@ -1334,6 +1334,13 @@ gst_ogg_mux_process_best_pad (GstOggMux * ogg_mux, GstOggPad * best) } } + if (GST_BUFFER_IS_DISCONT (buf)) { + packet.packetno++; + /* No public API for this; hack things in */ + pad->stream.pageno++; + force_flush = TRUE; + } + /* flush the currently built page if necessary */ if (force_flush) { GST_LOG_OBJECT (pad->collect.pad,