Gstreamer and libvpx from git failing to build

538 views
Skip to first unread message

Basil Mohamed Gohar

unread,
Oct 30, 2014, 11:35:19 AM10/30/14
to webm-d...@webmproject.org
I'm attempting to build gstreamer from git source, and gst-plugins-good
is failing to build with an error in the code that calls libvpx. The
error output in question is:

================================================================================
make[3]: Entering directory
`/home/bgohar/src/gst/gst-plugins-good/ext/vpx'
CC libgstvpx_la-gstvp8dec.lo
In file included from gstvp8dec.c:49:0:
gstvp8dec.c: In function 'gst_vp8_dec_handle_frame':
gstvp8utils.h:30:26: error: 'IMG_FMT_I420' undeclared (first use in this
function)
#define VPX_IMG_FMT_I420 IMG_FMT_I420
^
gstvp8dec.c:542:21: note: in expansion of macro 'VPX_IMG_FMT_I420'
if (img->fmt != VPX_IMG_FMT_I420) {
^
gstvp8utils.h:30:26: note: each undeclared identifier is reported only
once for each function it appears in
#define VPX_IMG_FMT_I420 IMG_FMT_I420
^
gstvp8dec.c:542:21: note: in expansion of macro 'VPX_IMG_FMT_I420'
if (img->fmt != VPX_IMG_FMT_I420) {
^
make[3]: *** [libgstvpx_la-gstvp8dec.lo] Error 1
make[3]: Leaving directory
`/home/bgohar/src/gst/gst-plugins-good/ext/vpx'
make[2]: *** [vpx] Error 2
make[2]: Leaving directory `/home/bgohar/src/gst/gst-plugins-good/ext'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/bgohar/src/gst/gst-plugins-good'
make: *** [all] Error 2
================================================================================

I am asking here first because I wanted to see if anyone else has
attempted to build gstreamer with libvpx, both from recent git, as well,
and if they've encountered any issue like the above.
--
Libre Video
http://librevideo.org

Johann Koenig

unread,
Oct 30, 2014, 12:03:10 PM10/30/14
to webm-d...@webmproject.org
On Thu, Oct 30, 2014 at 8:35 AM, Basil Mohamed Gohar
<basil...@librevideo.org> wrote:
> gstvp8utils.h:30:26: error: 'IMG_FMT_I420' undeclared (first use in this
> function)
> #define VPX_IMG_FMT_I420 IMG_FMT_I420

We removed the IMG_FMT_I420 declarations in favor of the
library-specific VPX_IMG_FMT_I420 form (as well as VPX_PLANE_[YUV]) in
this change:
https://gerrit.chromium.org/gerrit/#/c/70164/3/vpx/vpx_image.h,unified

Basil Mohamed Gohar

unread,
Oct 30, 2014, 12:16:33 PM10/30/14
to webm-d...@webmproject.org
Should we report this to gstreamer? Is this a change that will be going
into the 1.4 release of libvpx, for example?

Johann Koenig

unread,
Oct 30, 2014, 12:21:14 PM10/30/14
to webm-d...@webmproject.org
On Thu, Oct 30, 2014 at 9:16 AM, Basil Mohamed Gohar
<basil...@librevideo.org> wrote:
> Should we report this to gstreamer? Is this a change that will be going
> into the 1.4 release of libvpx, for example?

Yes this will be part of the next release. I'm not sure why they have
the defines that way:
gstvp8utils.h:30:26: error: 'IMG_FMT_I420' undeclared (first use in
this function)
#define VPX_IMG_FMT_I420 IMG_FMT_I420

It looks like they're re-defining VPX_IMG_FMT_I420 (from the error
message, don't have the source to gstvp8utils.h handy) in the opposite
direction as vpx_image.h and I can't quite work out why they would do
that.

Johann Koenig

unread,
Oct 30, 2014, 12:26:54 PM10/30/14
to webm-d...@webmproject.org
https://github.com/timvideos/gst-plugins-bad/blob/master/ext/vp8/gstvp8utils.h

They implemented it as a backwards compatibility trick. There is no
need to support versions of libvpx which do not use the VPX_ prefix.
The transition was sometime in 2010.

Basil Mohamed Gohar

unread,
Oct 31, 2014, 9:52:28 PM10/31/14
to webm-d...@webmproject.org
I've opened an issue upstream here:

https://bugzilla.gnome.org/show_bug.cgi?id=739476

Basil Mohamed Gohar

unread,
Nov 1, 2014, 8:49:17 AM11/1/14
to webm-d...@webmproject.org
There is a question in that bug:
https://bugzilla.gnome.org/show_bug.cgi?id=739476#c2

>
> Proposal patch to fix compatibility defines with recent version of libvpx.
>
> However, vp8enc and vp9enc currently exports a property "PROP_ARNR_TYPE" which
> is deprecated leading the compilation to fail.
>
> For now we can either remove this property from vpxenc or try to disable the
> deprecation warning. What do you prefer ?

What would be the best answer in that case?

Johann Koenig

unread,
Nov 1, 2014, 2:05:36 PM11/1/14
to webm-d...@webmproject.org

Looks like they have it under control. Thanks for reporting the bug to them!

Basil Mohamed Gohar

unread,
Nov 1, 2014, 9:13:13 PM11/1/14
to webm-d...@webmproject.org
Yeah, and that last message was actually for other gstreamer devs, and not for "us" upstream. Thanks for helping me isolate the issue to make a good bug report. I'm excited to try it shortly.

Basil Mohamed Gohar

unread,
Nov 10, 2014, 2:22:22 PM11/10/14
to webm-d...@webmproject.org
I'm happy to report that this issue's been resolved upstream, and I'm
able to build the gstreamer plugin now.
Reply all
Reply to author
Forward
0 new messages