Skip to contentSkip to conversation

Enabling x264 support in gstreamer

DISCUSSION Gary Thomas 5 participants 8 messages Aug 13, 2013

lore
Share & tools
lore
#0 lore raw

I see that some of the gstreamer recipes have changed so that x264 is now a PACKAGECONFIG option. However, I don't see anything that enables this option anywhere.

How do I get x264 support back - it was working with Poky/Yocto just a few weeks back...

Note: I have imported meta-oe/recipes-multimedia/x264 from meta-openembedded into my layers for this [library] package.

Thanks

Signature · 4 lines
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------
#1 lore raw
Quoted 9 lines · Gary Thomas

I see that some of the gstreamer recipes have changed so that x264 is now a PACKAGECONFIG option. However, I don't see anything that enables this option anywhere.

How do I get x264 support back - it was working with Poky/Yocto just a few weeks back...

Note: I have imported meta-oe/recipes-multimedia/x264 from meta-openembedded into my layers for this [library] package.

Add x264 to PACKAGECONFIG in your .bbappend or distro config as PACKAGECONFIG_append_pn-gst-foo = " x264"

Signature · 1 line
Martin 'JaMa' Jansa     jabber: [email protected]
#2 lore raw
Quoted 5 lines · Martin Jansa
Quoted 4 lines · Gary Thomas

I see that some of the gstreamer recipes have changed so that x264 is now a PACKAGECONFIG option. However, I don't see anything that enables this option anywhere.

Quoted 8 lines
Quoted 5 lines

How do I get x264 support back - it was working with Poky/Yocto just a few weeks back...

Note: I have imported meta-oe/recipes-multimedia/x264 from meta-openembedded into my layers for this [library] package.

Add x264 to PACKAGECONFIG in your .bbappend or distro config as PACKAGECONFIG_append_pn-gst-foo = " x264"

Thanks, although this seems very cumbersome to me. Is this the only (or at least expected) way for this to work?

I didn't find the section in the manual that discusses this to be very enlightening. It tells me *how* to use PACKAGECONFIG in a recipe but not really *why* nor how to control it in a build/image/distro.

Signature · 4 lines
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------
#3 lore raw
Quoted 9 lines · Gary Thomas
Quoted 8 lines · Martin Jansa
Quoted 7 lines · Gary Thomas

I see that some of the gstreamer recipes have changed so that x264 is now a PACKAGECONFIG option. However, I don't see anything that enables this option anywhere.

How do I get x264 support back - it was working with Poky/Yocto just a few weeks back...

Quoted 8 lines
Quoted 5 lines
Quoted 2 lines

Note: I have imported meta-oe/recipes-multimedia/x264 from meta-openembedded into my layers for this [library] package.

Add x264 to PACKAGECONFIG in your .bbappend or distro config as PACKAGECONFIG_append_pn-gst-foo = " x264"

Thanks, although this seems very cumbersome to me. Is this the only (or at least expected) way for this to work?

Well, if it's in a .bbappend (rather than distro.conf) then you don't need the _append_pn-gst-foo bit, you can just write

PACKAGECONFIG += "x264"

which is probably a bit neater and more intuitive. But if you don't already have a .bbappend for that recipe then you might not want to add one just for that, it's just a matter of taste which you prefer.

Other than that, yes, this is basically how PACKAGECONFIG is intended to be used. Some recipes set a default PACKAGECONFIG based on DISTRO_FEATURES, but in the general case it's just a variable that you need to set appropriately.

The thing that's a bit unsatisfactory about this approach is that we don't have any equivalent to DISTRO_FEATURES_BACKFILL for recipe-local PACKAGECONFIG options, which means that introducing new switches for things that were previously default-on tends to cause unexpected breakage of the sort that you've observed. It would be good to figure out a better way of dealing with that.

p.

#4 lore raw
Quoted 33 lines · On Tuesday 13 August 2013 20:36:09 Phil Blundell wrote:
Quoted 9 lines · Gary Thomas
Quoted 8 lines · Martin Jansa
Quoted 7 lines · Gary Thomas

I see that some of the gstreamer recipes have changed so that x264 is now a PACKAGECONFIG option. However, I don't see anything that enables this option anywhere.

How do I get x264 support back - it was working with Poky/Yocto just a few weeks back...

Quoted 8 lines
Quoted 5 lines
Quoted 2 lines

Note: I have imported meta-oe/recipes-multimedia/x264 from meta-openembedded into my layers for this [library] package.

Add x264 to PACKAGECONFIG in your .bbappend or distro config as PACKAGECONFIG_append_pn-gst-foo = " x264"

Thanks, although this seems very cumbersome to me. Is this the only (or at least expected) way for this to work?

Well, if it's in a .bbappend (rather than distro.conf) then you don't need the _append_pn-gst-foo bit, you can just write

PACKAGECONFIG += "x264"

which is probably a bit neater and more intuitive. But if you don't already have a .bbappend for that recipe then you might not want to add one just for that, it's just a matter of taste which you prefer.

Other than that, yes, this is basically how PACKAGECONFIG is intended to be used. Some recipes set a default PACKAGECONFIG based on DISTRO_FEATURES, but in the general case it's just a variable that you need to set appropriately.

Quoted 6 lines

The thing that's a bit unsatisfactory about this approach is that we don't have any equivalent to DISTRO_FEATURES_BACKFILL for recipe-local PACKAGECONFIG options, which means that introducing new switches for things that were previously default-on tends to cause unexpected breakage of the sort that you've observed. It would be good to figure out a better way of dealing with that.

The thing is for the option in question wasn't default-on before, it was silently on or off depending on the availability of x264. Since x264 was unavailable to most users of OE-Core alone the correct thing to do was to default it to off, so backfilling couldn't have helped here.

Cheers,
Paul

Signature · 2 lines
Paul Eggleton
Intel Open Source Technology Centre
#5 lore raw
In reply to Phil Blundell
Quoted 33 lines · Phil Blundell
Quoted 9 lines · Gary Thomas
Quoted 8 lines · Martin Jansa
Quoted 7 lines · Gary Thomas

I see that some of the gstreamer recipes have changed so that x264 is now a PACKAGECONFIG option. However, I don't see anything that enables this option anywhere.

How do I get x264 support back - it was working with Poky/Yocto just a few weeks back...

Quoted 8 lines
Quoted 5 lines
Quoted 2 lines

Note: I have imported meta-oe/recipes-multimedia/x264 from meta-openembedded into my layers for this [library] package.

Add x264 to PACKAGECONFIG in your .bbappend or distro config as PACKAGECONFIG_append_pn-gst-foo = " x264"

Thanks, although this seems very cumbersome to me. Is this the only (or at least expected) way for this to work?

Well, if it's in a .bbappend (rather than distro.conf) then you don't need the _append_pn-gst-foo bit, you can just write

PACKAGECONFIG += "x264"

which is probably a bit neater and more intuitive. But if you don't already have a .bbappend for that recipe then you might not want to add one just for that, it's just a matter of taste which you prefer.

Other than that, yes, this is basically how PACKAGECONFIG is intended to be used. Some recipes set a default PACKAGECONFIG based on DISTRO_FEATURES, but in the general case it's just a variable that you need to set appropriately.

Quoted 6 lines

The thing that's a bit unsatisfactory about this approach is that we don't have any equivalent to DISTRO_FEATURES_BACKFILL for recipe-local PACKAGECONFIG options, which means that introducing new switches for things that were previously default-on tends to cause unexpected breakage of the sort that you've observed. It would be good to figure out a better way of dealing with that.

Well on this case x264 cannot be enabled in gst-* recipe in oe-core, because x264 is in different layer.

The old behavior Gary was depending on wasn't deterministic as x264 was enabled only when he built x264 before gst-*.

Signature · 1 line
Martin 'JaMa' Jansa     jabber: [email protected]
#6 lore raw
In reply to Gary Thomas
Quoted 9 lines · Gary Thomas

I see that some of the gstreamer recipes have changed so that x264 is now a PACKAGECONFIG option. However, I don't see anything that enables this option anywhere.

How do I get x264 support back - it was working with Poky/Yocto just a few weeks back...

Note: I have imported meta-oe/recipes-multimedia/x264 from meta-openembedded into my layers for this [library] package.

I havn't worked with this myself, but my guess is. In your distribution.conf file (or your local.conf):

PACKAGECONFIG_gst-plugins-ugly = "x264"

or

PACKAGECONFIG_gstreamer1.0-plugins-ugly = "a52dec lame mad mpeg2dec x264"

Quoted 2 lines

Thanks

#7 lore raw
Quoted 11 lines · On Tuesday 13 August 2013 12:37:19 Mark Hatle wrote:
Quoted 9 lines · Gary Thomas

I see that some of the gstreamer recipes have changed so that x264 is now a PACKAGECONFIG option. However, I don't see anything that enables this option anywhere.

How do I get x264 support back - it was working with Poky/Yocto just a few weeks back...

Note: I have imported meta-oe/recipes-multimedia/x264 from meta-openembedded into my layers for this [library] package.

Quoted 8 lines

I havn't worked with this myself, but my guess is. In your distribution.conf file (or your local.conf):

PACKAGECONFIG_gst-plugins-ugly = "x264"

or

PACKAGECONFIG_gstreamer1.0-plugins-ugly = "a52dec lame mad mpeg2dec x264"

You missed out the "pn-" which is necessary for such per-recipe overrides to work. The correct examples would be:

PACKAGECONFIG_pn-gst-plugins-ugly = "x264"

or

PACKAGECONFIG_pn-gstreamer1.0-plugins-ugly = "a52dec lame mad mpeg2dec x264"

If preferred you could use ..._append_pn-... = " x264" to add to the existing options rather than setting them outright.

Cheers,
Paul

Signature · 2 lines
Paul Eggleton
Intel Open Source Technology Centre