diff options
author | Carl-Anton Ingmarsson <ca.ingmarsson@gmail.com> | 2009-04-27 20:50:11 +0200 |
---|---|---|
committer | Jan Schmidt <thaytan@noraisin.net> | 2009-06-20 15:21:33 +0100 |
commit | e737b9a916d8641b6ac0cc6ea8fd4f3326b9d004 (patch) | |
tree | fd5da943e371f4170914f2b0ea978fb0a904ace8 /sys/vdpau/gstvdpdecoder.c | |
parent | fb70c1e7b5b187f329261b3a26717e621b39de71 (diff) | |
download | gst-plugins-bad-e737b9a916d8641b6ac0cc6ea8fd4f3326b9d004.tar.gz gst-plugins-bad-e737b9a916d8641b6ac0cc6ea8fd4f3326b9d004.tar.bz2 gst-plugins-bad-e737b9a916d8641b6ac0cc6ea8fd4f3326b9d004.zip |
vdpaumpegdec: destroy the VdpDecoder and reset the decoder on state change
Diffstat (limited to 'sys/vdpau/gstvdpdecoder.c')
-rw-r--r-- | sys/vdpau/gstvdpdecoder.c | 27 |
1 files changed, 0 insertions, 27 deletions
diff --git a/sys/vdpau/gstvdpdecoder.c b/sys/vdpau/gstvdpdecoder.c index 8b79dff0..7aca6c2f 100644 --- a/sys/vdpau/gstvdpdecoder.c +++ b/sys/vdpau/gstvdpdecoder.c @@ -75,28 +75,6 @@ gst_vdp_decoder_push_video_buffer (GstVdpDecoder * dec, return gst_pad_push (dec->src, GST_BUFFER (buffer)); } -static GstStateChangeReturn -gst_vdp_decoder_change_state (GstElement * element, GstStateChange transition) -{ - GstVdpDecoder *dec; - - dec = GST_VDP_DECODER (element); - - switch (transition) { - case GST_STATE_CHANGE_READY_TO_PAUSED: - dec->device = gst_vdp_get_device (dec->display_name); - break; - case GST_STATE_CHANGE_PAUSED_TO_READY: - g_object_unref (dec->device); - dec->device = NULL; - break; - default: - break; - } - - return GST_STATE_CHANGE_SUCCESS; -} - static gboolean gst_vdp_decoder_sink_set_caps (GstPad * pad, GstCaps * caps) { @@ -182,8 +160,6 @@ gst_vdp_decoder_class_init (GstVdpDecoderClass * klass) g_object_class_install_property (gobject_class, PROP_DISPLAY, g_param_spec_string ("display", "Display", "X Display name", NULL, G_PARAM_READWRITE | G_PARAM_CONSTRUCT)); - - gstelement_class->change_state = gst_vdp_decoder_change_state; } static void @@ -214,9 +190,6 @@ gst_vdp_decoder_finalize (GObject * object) { GstVdpDecoder *dec = (GstVdpDecoder *) object; - if (dec->device) - g_object_unref (dec->device); - g_free (dec->display_name); } |