GNOME Bugzilla – Bug 715183
build fails with gstreamer uninstalled (1.3)
Last modified: 2013-11-27 14:20:18 UTC
gstreamer-vaapi fails to build with gstreamer uninstalled (git). The regression seems to be related to 29270e3af6f0c145a50f26ff9fb24a0092c5dbe7. autogen.sh (and autogen.sh --with-gstreamer-api=1.2) returns: checking for GStreamer API version... 1.3 configure: error: unsupported GStreamer API version 1.3
Created attachment 262798 [details] [review] WIP: Fix build with gstreamer >= 1.2 Here is a work in progress that fix the issue while compiling against gstreamer >= 1.2. Not yet tested with 0.10 and 1.0. Also i guess this patch should be splitted.
Review of attachment 262798 [details] [review]: Yes, I'm my opinion this patch should be split. ::: configure.ac @@ +210,3 @@ + GST_PLUGINS_BASE_VERSION_REQUIRED=gst13_plugins_base_version + GST_PLUGINS_BAD_VERSION_REQUIRED=gst13_plugins_bad_version + ;; you defined above gst14_*, not gst13_*, as you're using here ::: gst/vaapi/gstvaapidownload.c @@ +95,2 @@ /* GstImplementsInterface interface */ +#if !GST_CHECK_VERSION(1,0,0) I'm not sure if gstvaapidownload and gstvaapiupload should be ported to gstreamer 1.0. AFAIK, they are not required, as they were for gstreamer 0.10
(In reply to comment #1) > Also i guess this patch should be splitted. Agree: one for enabling the compilation of gstvaapi with the current master of gstreamer and other for enabling the encoder plugin.
(In reply to comment #2) > Review of attachment 262798 [details] [review]: > > Yes, I'm my opinion this patch should be split. > > ::: configure.ac > @@ +210,3 @@ > + GST_PLUGINS_BASE_VERSION_REQUIRED=gst13_plugins_base_version > + GST_PLUGINS_BAD_VERSION_REQUIRED=gst13_plugins_bad_version > + ;; > > you defined above gst14_*, not gst13_*, as you're using here First of all, thanks for your review. Since gst 1.3 api will not exist whereas the 1.4 will, should I declare gst14_* or gst13_* ? (and use those variables if I detect 1.3 api) > > ::: gst/vaapi/gstvaapidownload.c > @@ +95,2 @@ > /* GstImplementsInterface interface */ > +#if !GST_CHECK_VERSION(1,0,0) > > I'm not sure if gstvaapidownload and gstvaapiupload should be ported to > gstreamer 1.0. AFAIK, they are not required, as they were for gstreamer 0.10
Created attachment 262845 [details] [review] [PATCH 1/2] Fix build with gstreamer >= 1.2
Created attachment 262846 [details] [review] [PATCH 2/2] vaapiencode: fix build with gstreamer >= 1.2
Created attachment 262888 [details] [review] [PATCH 1/1] Fix build with gstreamer >= 1.2 Patches rebased on master.
LGTM. Thanks. Though, the changelog would mention gstreamer > 1.2 or gstreamer >= 1.3 as it works fine as gstreamer == 1.2.x (1.2 branch). :)
Applied. Additional changes include gst_vaapi_lt_current to stick to 4. So that the SONAME remains libgstvaapi-1.3.so.0 [1.3], libgstvaapi-1.2.so.0 [1.2], etc. Likewise, removed the extra AS_VERSION_COMPARE() since 1.3 case was already covered by the ">" clause for the 1.2 check, thus also yielding USE_GST_API_1_2p="yes" in that case. Should any GStreamer 1.4 specific change be needed, then we would add USE_GST_API_1_4p there.
commit 76174922bc38d3e323079e6c39f838f200963618 Author: Matthieu Bouron <matthieu.bouron@collabora.com> Date: Tue Nov 26 12:06:07 2013 +0000 Fix build with GStreamer >= 1.3. http://bugzilla.gnome.org/show_bug.cgi?id=715183 Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>