From: gb Date: Wed, 12 May 2010 08:02:45 +0000 (+0000) Subject: Fix integration within the playbin2 pipeline. X-Git-Tag: 1.19.3~503^2~3423 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=2d90a2dd3a4713c5e49bdafbcc11c64333e00b14;p=platform%2Fupstream%2Fgstreamer.git Fix integration within the playbin2 pipeline. --- diff --git a/NEWS b/NEWS index 0219c2f..07c7042 100644 --- a/NEWS +++ b/NEWS @@ -1,6 +1,9 @@ -gst-vaapi NEWS -- summary of changes. 2010-05-05 +gst-vaapi NEWS -- summary of changes. 2010-05-DD Copyright (C) 2010 Splitted-Desktop Systems +Version 0.2.1 - DD.May.2010 +* Fix integration within the playbin2 pipeline + Version 0.2.0 - 05.May.2010 * Relicense gst-libs/ code to LGPL v2.1+ * Add FFmpeg/VAAPI decoder for the new `vaapidecode' element diff --git a/README b/README index e192cc7..7f18290 100644 --- a/README +++ b/README @@ -74,6 +74,5 @@ elements automatically. Caveats ------- - * No automatic integration within the default playbin2 pipeline * No ad-hoc parser, vaapidecoder currently relies on FFmpeg * MPEG-4 Part-2 (DivX) has decoding bugs diff --git a/gst/vaapidecode/gstvaapidecode.c b/gst/vaapidecode/gstvaapidecode.c index 4fcbbe0..84ab40c 100644 --- a/gst/vaapidecode/gstvaapidecode.c +++ b/gst/vaapidecode/gstvaapidecode.c @@ -31,6 +31,7 @@ #include #include #include +#include #define GST_PLUGIN_NAME "vaapidecode" #define GST_PLUGIN_DESC "A VA-API based video decoder" @@ -157,26 +158,13 @@ error_commit_buffer: } } -static gboolean +static inline gboolean gst_vaapidecode_ensure_display(GstVaapiDecode *decode) { - GstVaapiVideoSink *sink; - GstVaapiDisplay *display; - - if (decode->display) - return TRUE; - - /* Look for a downstream vaapisink */ - sink = gst_vaapi_video_sink_lookup(GST_ELEMENT(decode)); - if (!sink) - return FALSE; - - display = gst_vaapi_video_sink_get_display(sink); - if (!display) - return FALSE; - - decode->display = g_object_ref(display); - return TRUE; + if (!decode->display) + decode->display = + gst_vaapi_display_lookup_downstream(GST_ELEMENT(decode)); + return decode->display != NULL; } static gboolean