summaryrefslogtreecommitdiff
path: root/ext/ogg/gstoggmux.c
diff options
context:
space:
mode:
authorVincent Penquerc'h <vincent.penquerch@collabora.co.uk>2011-08-17 18:48:54 +0100
committerSebastian Dröge <sebastian.droege@collabora.co.uk>2011-08-18 11:16:50 +0200
commit8304b7b40d2f791947d3e0360c7a50fa6365a28e (patch)
tree25cb040116a482a2be6c4949984f620493d1b4dc /ext/ogg/gstoggmux.c
parentfd8434fc7450dc3bdc057d2d89a875be9b683181 (diff)
ogg: move the "always flush page" to oggstream
It avoids checking for specific media types in the muxer. https://bugzilla.gnome.org/show_bug.cgi?id=656775
Diffstat (limited to 'ext/ogg/gstoggmux.c')
-rw-r--r--ext/ogg/gstoggmux.c10
1 files changed, 2 insertions, 8 deletions
diff --git a/ext/ogg/gstoggmux.c b/ext/ogg/gstoggmux.c
index d24e4bb28..f039efca6 100644
--- a/ext/ogg/gstoggmux.c
+++ b/ext/ogg/gstoggmux.c
@@ -1069,13 +1069,9 @@ gst_ogg_mux_get_headers (GstOggPadData * pad)
GST_LOG_OBJECT (thepad, "streamheader is not fixed list");
}
- /* Start a new page for every CMML buffer */
- if (gst_structure_has_name (structure, "text/x-cmml"))
- pad->always_flush_page = TRUE;
} else if (gst_structure_has_name (structure, "video/x-dirac")) {
res = g_list_append (res, pad->buffer);
pad->buffer = NULL;
- pad->always_flush_page = TRUE;
} else {
GST_LOG_OBJECT (thepad, "caps don't have streamheader");
}
@@ -1246,9 +1242,6 @@ gst_ogg_mux_send_headers (GstOggMux * mux)
hbufs = g_list_append (hbufs, hbuf);
}
- if (gst_structure_has_name (structure, "video/x-dirac")) {
- pad->always_flush_page = TRUE;
- }
gst_caps_unref (caps);
}
@@ -1494,7 +1487,8 @@ gst_ogg_mux_process_best_pad (GstOggMux * ogg_mux, GstOggPadData * best)
tmpbuf = NULL;
/* we flush when we see a new keyframe */
- force_flush = (pad->prev_delta && !delta_unit) || pad->always_flush_page;
+ force_flush = (pad->prev_delta && !delta_unit)
+ || pad->map.always_flush_page;
if (duration != -1) {
pad->duration += duration;
/* if page duration exceeds max, flush page */