summaryrefslogtreecommitdiff
path: root/ext/dts
diff options
context:
space:
mode:
authorSebastian Dröge <sebastian.droege@collabora.co.uk>2012-03-29 17:41:53 +0200
committerSebastian Dröge <sebastian.droege@collabora.co.uk>2012-03-29 17:41:53 +0200
commit860ccd414dbb313fabf065b92838f0f39037584b (patch)
tree0d5c0d3510db3ca3d7e6487420e8d09f74ae1961 /ext/dts
parenta9ec4d62a89dd53aa295af02c7d5f57ef936359b (diff)
parentd84d98943af42ce645ee022207bcf04e747d2d4a (diff)
downloadgstreamer-plugins-bad-860ccd414dbb313fabf065b92838f0f39037584b.tar.gz
Merge remote-tracking branch 'origin/0.10'
Conflicts: NEWS RELEASE common configure.ac docs/libs/gst-plugins-bad-libs-sections.txt docs/plugins/gst-plugins-bad-plugins.args docs/plugins/gst-plugins-bad-plugins.hierarchy docs/plugins/gst-plugins-bad-plugins.interfaces docs/plugins/inspect/plugin-adpcmdec.xml docs/plugins/inspect/plugin-adpcmenc.xml docs/plugins/inspect/plugin-assrender.xml docs/plugins/inspect/plugin-audiovisualizers.xml docs/plugins/inspect/plugin-autoconvert.xml docs/plugins/inspect/plugin-bayer.xml docs/plugins/inspect/plugin-bz2.xml docs/plugins/inspect/plugin-camerabin2.xml docs/plugins/inspect/plugin-celt.xml docs/plugins/inspect/plugin-dataurisrc.xml docs/plugins/inspect/plugin-debugutilsbad.xml docs/plugins/inspect/plugin-dtmf.xml docs/plugins/inspect/plugin-dtsdec.xml docs/plugins/inspect/plugin-dvbsuboverlay.xml docs/plugins/inspect/plugin-dvdspu.xml docs/plugins/inspect/plugin-faac.xml docs/plugins/inspect/plugin-faad.xml docs/plugins/inspect/plugin-gsm.xml docs/plugins/inspect/plugin-h264parse.xml docs/plugins/inspect/plugin-mms.xml docs/plugins/inspect/plugin-modplug.xml docs/plugins/inspect/plugin-mpeg2enc.xml docs/plugins/inspect/plugin-mpegdemux2.xml docs/plugins/inspect/plugin-mpegtsdemux.xml docs/plugins/inspect/plugin-mpegvideoparse.xml docs/plugins/inspect/plugin-mplex.xml docs/plugins/inspect/plugin-pcapparse.xml docs/plugins/inspect/plugin-rawparse.xml docs/plugins/inspect/plugin-rtpmux.xml docs/plugins/inspect/plugin-rtpvp8.xml docs/plugins/inspect/plugin-scaletempo.xml docs/plugins/inspect/plugin-schro.xml docs/plugins/inspect/plugin-sdp.xml docs/plugins/inspect/plugin-segmentclip.xml docs/plugins/inspect/plugin-shm.xml docs/plugins/inspect/plugin-videomaxrate.xml docs/plugins/inspect/plugin-videoparsersbad.xml docs/plugins/inspect/plugin-vp8.xml docs/plugins/inspect/plugin-y4mdec.xml ext/celt/gstceltdec.c ext/dts/gstdtsdec.c ext/modplug/gstmodplug.cc ext/opus/gstopusenc.c gst-libs/gst/video/gstbasevideocodec.c gst-libs/gst/video/gstbasevideocodec.h gst-libs/gst/video/gstbasevideodecoder.c gst-libs/gst/video/gstbasevideodecoder.h gst-libs/gst/video/gstbasevideoencoder.c gst-libs/gst/video/gstbasevideoencoder.h gst/adpcmdec/Makefile.am gst/audiovisualizers/gstbaseaudiovisualizer.c gst/h264parse/gsth264parse.c gst/mpegdemux/mpegtsparse.c gst/mpegtsdemux/mpegtsbase.c gst/mpegtsdemux/mpegtspacketizer.c gst/mpegtsdemux/mpegtsparse.c gst/mpegtsdemux/tsdemux.c gst/mpegtsdemux/tsdemux.h gst/mxf/mxfdemux.c gst/rawparse/gstaudioparse.c gst/videoparsers/gsth263parse.c gst/videoparsers/gsth264parse.c sys/d3dvideosink/d3dvideosink.c sys/decklink/gstdecklinksink.cpp sys/dvb/gstdvbsrc.c sys/shm/gstshmsrc.c sys/vdpau/h264/gstvdph264dec.c sys/vdpau/mpeg/gstvdpmpegdec.c tests/examples/opencv/gst_element_print_properties.c win32/common/config.h
Diffstat (limited to 'ext/dts')
-rw-r--r--ext/dts/gstdtsdec.c32
-rw-r--r--ext/dts/gstdtsdec.h2
2 files changed, 3 insertions, 31 deletions
diff --git a/ext/dts/gstdtsdec.c b/ext/dts/gstdtsdec.c
index 07335d84a..ca7e35dc6 100644
--- a/ext/dts/gstdtsdec.c
+++ b/ext/dts/gstdtsdec.c
@@ -132,8 +132,6 @@ static gboolean gst_dtsdec_parse (GstAudioDecoder * dec, GstAdapter * adapter,
gint * offset, gint * length);
static GstFlowReturn gst_dtsdec_handle_frame (GstAudioDecoder * dec,
GstBuffer * buffer);
-static GstFlowReturn gst_dtsdec_pre_push (GstAudioDecoder * bdec,
- GstBuffer ** buffer);
static GstFlowReturn gst_dtsdec_chain (GstPad * pad, GstObject * parent,
GstBuffer * buf);
@@ -173,7 +171,6 @@ gst_dtsdec_class_init (GstDtsDecClass * klass)
gstbase_class->set_format = GST_DEBUG_FUNCPTR (gst_dtsdec_set_format);
gstbase_class->parse = GST_DEBUG_FUNCPTR (gst_dtsdec_parse);
gstbase_class->handle_frame = GST_DEBUG_FUNCPTR (gst_dtsdec_handle_frame);
- gstbase_class->pre_push = GST_DEBUG_FUNCPTR (gst_dtsdec_pre_push);
/**
* GstDtsDec::drc
@@ -257,10 +254,6 @@ gst_dtsdec_stop (GstAudioDecoder * dec)
dca_free (dts->state);
dts->state = NULL;
}
- if (dts->pending_tags) {
- gst_tag_list_free (dts->pending_tags);
- dts->pending_tags = NULL;
- }
return TRUE;
}
@@ -284,7 +277,7 @@ gst_dtsdec_parse (GstAudioDecoder * bdec, GstAdapter * adapter,
bit_rate = dts->bit_rate;
sample_rate = dts->sample_rate;
flags = 0;
- while (av >= 7) {
+ while (size >= 7) {
length = dca_syncinfo (dts->state, data, &flags,
&sample_rate, &bit_rate, &frame_length);
@@ -447,28 +440,9 @@ gst_dtsdec_update_streaminfo (GstDtsDec * dts)
/* 1 => open bitrate, 2 => variable bitrate, 3 => lossless */
gst_tag_list_add (taglist, GST_TAG_MERGE_APPEND, GST_TAG_BITRATE,
(guint) dts->bit_rate, NULL);
-
- if (dts->pending_tags) {
- gst_tag_list_free (dts->pending_tags);
- dts->pending_tags = NULL;
- }
-
- dts->pending_tags = taglist;
- }
-}
-
-static GstFlowReturn
-gst_dtsdec_pre_push (GstAudioDecoder * bdec, GstBuffer ** buffer)
-{
- GstDtsDec *dts = GST_DTSDEC (bdec);
-
- if (G_UNLIKELY (dts->pending_tags)) {
- gst_pad_push_event (GST_AUDIO_DECODER_SRC_PAD (dts),
- gst_event_new_tag (dts->pending_tags));
- dts->pending_tags = NULL;
+ gst_audio_decoder_merge_tags (GST_AUDIO_DECODER (dts), taglist,
+ GST_TAG_MERGE_REPLACE);
}
-
- return GST_FLOW_OK;
}
static GstFlowReturn
diff --git a/ext/dts/gstdtsdec.h b/ext/dts/gstdtsdec.h
index 16b7e91ea..b37b59024 100644
--- a/ext/dts/gstdtsdec.h
+++ b/ext/dts/gstdtsdec.h
@@ -68,8 +68,6 @@ struct _GstDtsDec {
#else
dts_state_t *state;
#endif
-
- GstTagList *pending_tags;
};
struct _GstDtsDecClass {