From ab0a58a647e0c9fd3393ac28812f96d4d3eb9ae4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Manuel=20J=C3=A1quez=20Leal?= Date: Wed, 23 Sep 2015 12:13:41 +0200 Subject: vaapidecode: simplify copy of GstVideoCodecState MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Víctor Manuel Jáquez Leal --- gst/vaapi/gstvaapidecode.c | 19 ++----------------- 1 file changed, 2 insertions(+), 17 deletions(-) diff --git a/gst/vaapi/gstvaapidecode.c b/gst/vaapi/gstvaapidecode.c index e8acad4e..417ad3c0 100644 --- a/gst/vaapi/gstvaapidecode.c +++ b/gst/vaapi/gstvaapidecode.c @@ -144,31 +144,16 @@ static GstVideoCodecState * copy_video_codec_state (const GstVideoCodecState * in_state) { GstVideoCodecState *state; - GstStructure *structure; - const GValue *codec_data; g_return_val_if_fail (in_state != NULL, NULL); state = g_slice_new0 (GstVideoCodecState); state->ref_count = 1; - gst_video_info_init (&state->info); - if (G_UNLIKELY (!gst_video_info_from_caps (&state->info, in_state->caps))) - goto fail; + state->info = in_state->info; state->caps = gst_caps_copy (in_state->caps); - - structure = gst_caps_get_structure (state->caps, 0); - - codec_data = gst_structure_get_value (structure, "codec_data"); - if (codec_data && G_VALUE_TYPE (codec_data) == GST_TYPE_BUFFER) - state->codec_data = GST_BUFFER (g_value_dup_boxed (codec_data)); + state->codec_data = gst_buffer_copy_deep (in_state->codec_data); return state; - -fail: - { - g_slice_free (GstVideoCodecState, state); - return NULL; - } } static gboolean -- cgit v1.2.1