[gst-cvs] gst-plugins-bad: mpegtsdemux: add pad for DVB Subtitling pads
Zaheer Abbas Merali
zaheer at kemper.freedesktop.org
Tue Sep 15 06:49:18 PDT 2009
Module: gst-plugins-bad
Branch: master
Commit: 712ee571905e30c64ff8801c2285efe637b355f6
URL: http://cgit.freedesktop.org/gstreamer/gst-plugins-bad/commit/?id=712ee571905e30c64ff8801c2285efe637b355f6
Author: Zaheer Abbas Merali <zaheerabbas at merali.org>
Date: Tue Aug 18 01:08:03 2009 +0200
mpegtsdemux: add pad for DVB Subtitling pads
---
gst/mpegdemux/gstmpegtsdemux.c | 13 +++++++++----
1 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/gst/mpegdemux/gstmpegtsdemux.c b/gst/mpegdemux/gstmpegtsdemux.c
index 7e99147..864ffa9 100644
--- a/gst/mpegdemux/gstmpegtsdemux.c
+++ b/gst/mpegdemux/gstmpegtsdemux.c
@@ -664,6 +664,11 @@ gst_mpegts_demux_fill_stream (GstMpegTSStream * stream, guint8 id,
template = klass->private_template;
name = g_strdup_printf ("private_%04x", stream->PID);
caps = gst_caps_new_simple ("private/teletext", NULL);
+ } else if (gst_mpeg_descriptor_find (stream->ES_info,
+ DESC_DVB_SUBTITLING)) {
+ template = klass->private_template;
+ name = g_strdup_printf ("private_%04x", stream->PID);
+ caps = gst_caps_new_simple ("private/x-dvbsub", NULL);
}
break;
case ST_HDV_AUX_V:
@@ -1007,8 +1012,8 @@ gst_mpegts_demux_data_cb (GstPESFilter * filter, gboolean first,
* to drop. */
if (stream->PMT_pid <= MPEGTS_MAX_PID && demux->streams[stream->PMT_pid]
&& demux->streams[demux->streams[stream->PMT_pid]->PMT.PCR_PID]
- && demux->streams[demux->streams[stream->PMT_pid]->PMT.PCR_PID]->
- discont_PCR) {
+ && demux->streams[demux->streams[stream->PMT_pid]->PMT.
+ PCR_PID]->discont_PCR) {
GST_WARNING_OBJECT (demux, "middle of discont, dropping");
goto bad_timestamp;
}
@@ -1030,8 +1035,8 @@ gst_mpegts_demux_data_cb (GstPESFilter * filter, gboolean first,
*/
if (stream->PMT_pid <= MPEGTS_MAX_PID && demux->streams[stream->PMT_pid]
&& demux->streams[demux->streams[stream->PMT_pid]->PMT.PCR_PID]
- && demux->streams[demux->streams[stream->PMT_pid]->PMT.PCR_PID]->
- last_PCR > 0) {
+ && demux->streams[demux->streams[stream->PMT_pid]->PMT.
+ PCR_PID]->last_PCR > 0) {
GST_DEBUG_OBJECT (demux, "timestamps wrapped before noticed in PCR");
time = MPEGTIME_TO_GSTTIME (pts) + stream->base_time +
MPEGTIME_TO_GSTTIME ((guint64) (1) << 33);
More information about the Gstreamer-commits
mailing list