[OE-core] [PATCH 06/14] gst-ffmpeg: upgrade to 0.10.13

Wang, Shane shane.wang at intel.com
Sat Dec 24 07:23:37 UTC 2011


Koen Kooi wrote on 2011-12-24:

> 
> Op 23 dec. 2011, om 17:35 heeft Shane Wang het volgende geschreven:
> 
>> Signed-off-by: Shane Wang <shane.wang at intel.com> ---
>> .../gst-ffmpeg-0.10.13/configure-fix.patch         |   20
>> ++++++++++++++++++++ .../lower-rank.diff                               
>> |    0 ...gst-ffmpeg_0.10.11.bb => gst-ffmpeg_0.10.13.bb} |   19
>> ++++++++++++------- 3 files changed, 32 insertions(+), 7 deletions(-)
>> create mode 100644
> meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.13/configure-fix.patc
> h
>> rename meta/recipes-multimedia/gstreamer/{gst-ffmpeg-0.10.11 =>
>> gst-ffmpeg-0.10.13}/lower-rank.diff (100%) rename
>> meta/recipes-multimedia/gstreamer/{gst-ffmpeg_0.10.11.bb =>
>> gst-ffmpeg_0.10.13.bb} (58%)
>> 
>> diff --git
> a/meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.13/configure-fix.pa
> tch
> b/meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.13/configure-fix.pa
> tch
>> new file mode 100644
>> index 0000000..81029ca
>> --- /dev/null
>> +++
> b/meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.13/configure-fix.pa
> tch
>> @@ -0,0 +1,20 @@ +Disable yasm for libav when --disable-yasm +
>> +Upstream-Status: Inappropriate [configuration] + +Signed-off-by: Shane
>> Wang <shane.wang at intel.com> + +diff -r f2f8f74c6e30 configure.ac +---
>> a/configure.ac	Thu Dec 22 23:56:09 2011 +0800 ++++ b/configure.ac	Thu
>> Dec 22 23:57:37 2011 +0800 +@@ -325,6 +325,10 @@ +        
>> --enable-gpl" +   fi + ++  if test "x$disable_yasm" != "xyes"; then ++ 
>>   embffmpeg_configure_args="$embffmpeg_configure_args --disable-yasm"
>> ++  fi ++ +   # if we are cross-compiling, tell ffmpeg so +  
>> target_os=`echo $host_os | sed 's/-gnu//'` +   if test
>> "x$cross_compiling" = xyes; then diff --git
> a/meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.11/lower-rank.diff
> b/meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.13/lower-rank.diff
>> similarity index 100% rename from
>> meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.11/lower-rank.diff
>> rename to
>> meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.13/lower-rank.diff
>> diff --git a/meta/recipes-multimedia/gstreamer/gst-ffmpeg_0.10.11.bb
>> b/meta/recipes-multimedia/gstreamer/gst-ffmpeg_0.10.13.bb similarity
>> index 58% rename from
>> meta/recipes-multimedia/gstreamer/gst-ffmpeg_0.10.11.bb rename to
>> meta/recipes-multimedia/gstreamer/gst-ffmpeg_0.10.13.bb index
>> c3512e1..a1b7cbb 100644 ---
>> a/meta/recipes-multimedia/gstreamer/gst-ffmpeg_0.10.11.bb +++
>> b/meta/recipes-multimedia/gstreamer/gst-ffmpeg_0.10.13.bb @@ -5,11
>> +5,11 @@ LIC_FILES_CHKSUM =
>> "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
>> 
> file://ext/libpostproc/gstpostproc.c;beginline=1;endline=18;md5=5896e445
> e41681324381f5869ee33d38 \
>> 
>> file://COPYING.LIB;md5=55ca817ccb7d5b5b66355690e9abc605 \
>> 
> file://ext/ffmpeg/gstffmpeg.h;beginline=1;endline=18;md5=ff65467b0c53cd
> fa98d0684c1bc240a9 \
>> -
> file://gst-libs/ext/ffmpeg/LICENSE;md5=524b5ee4bdbbf755ebbb76727ba80
> b0d \
>> -
> file://gst-libs/ext/ffmpeg/COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fd
> af4a4263 \
>> -
> file://gst-libs/ext/ffmpeg/COPYING.GPLv3;md5=d32239bcb673463ab874e80
> d47fae504 \
>> -
> file://gst-libs/ext/ffmpeg/COPYING.LGPLv2.1;md5=e344c8fa836c3a41c4cbd
> 79d7bd3a379 \
>> -
> file://gst-libs/ext/ffmpeg/COPYING.LGPLv3;md5=e6a600fd5e1d9cbde2d983
> 680233ad02"
>> +
> file://gst-libs/ext/libav/LICENSE;md5=abc3b8cb02856aa7823bbbd162d1623
> 2 \
>> +
> file://gst-libs/ext/libav/COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf
> 4a4263 \
>> +
> file://gst-libs/ext/libav/COPYING.GPLv3;md5=d32239bcb673463ab874e80d4
> 7fae504 \
>> +
> file://gst-libs/ext/libav/COPYING.LGPLv2.1;md5=e344c8fa836c3a41c4cbd79
> d7bd3a379 \
>> +
> file://gst-libs/ext/libav/COPYING.LGPLv3;md5=e6a600fd5e1d9cbde2d98368
> 0233ad02"
> 
> What changed?
> 

For the five, ffmpeg doesn't exist, so I used libav, four of them are the same.
For LICENSE, the diff is:

==================================
1,2c1,2
< FFmpeg:
< -------
---
> Libav:
> ------
4c4
< Most files in FFmpeg are under the GNU Lesser General Public License version 2.1
---
> Most files in Libav are under the GNU Lesser General Public License version 2.1
7c7
< FFmpeg.
---
> Libav.
9c9
< Some optional parts of FFmpeg are licensed under the GNU General Public License
---
> Some optional parts of Libav are licensed under the GNU General Public License
12c12
< configure to activate them. In this case, FFmpeg's license changes to GPL v2+.
---
> configure to activate them. In this case, Libav's license changes to GPL v2+.
14c14
< Specifically, the GPL parts of FFmpeg are
---
> Specifically, the GPL parts of Libav are
17,18d16
< - optional MMX optimizations for YUV to RGB colorspace conversion in
<   libswscale/x86/yuv2rgb_template.c
20,21d17
<   libavcodec/x86/h264_deblock_sse2.asm
<   libavcodec/x86/h264_idct_sse2.asm
40c36
< conjunction with FFmpeg. They require --enable-gpl to be passed to configure
---
> conjunction with Libav. They require --enable-gpl to be passed to configure
45c41
< those licenses. So to combine the OpenCORE libraries with FFmpeg, the license
---
> those licenses. So to combine the OpenCORE libraries with Libav, the license
48c44
< The nonfree external library libfaac can be hooked up in FFmpeg. You need to
---
> The nonfree external library libfaac can be hooked up in Libav. You need to
50c46
< as FFmpeg then becomes nonfree and unredistributable.
---
> as Libav then becomes nonfree and unredistributable.
==================================



>> HOMEPAGE = "http://www.gstreamer.net/"
>> DEPENDS = "gstreamer gst-plugins-base zlib"
>> 
>> @@ -17,15 +17,20 @@ inherit autotools pkgconfig
>> 
>> SRC_URI =
> "http://gstreamer.freedesktop.org/src/${BPN}/${BPN}-${PV}.tar.bz2 \
>>            file://lower-rank.diff \
>> +           file://configure-fix.patch \
>> "
>> 
>> -SRC_URI[md5sum] = "0d23197ba7ac06ea34fa66d38469ebe5"
>> -SRC_URI[sha256sum] =
> "ff36a138e5af4ed8dcc459d6d6521fe66ed31ec29ba9a924dc3675c6749a692
> e"
>> +SRC_URI[md5sum] = "7f5beacaf1312db2db30a026b36888c4"
>> +SRC_URI[sha256sum] =
> "76fca05b08e00134e3cb92fa347507f42cbd48ddb08ed3343a912def187fbb6
> 2"
>> 
>> PR = "r0"
>> 
>> EXTRA_OECONF = "--with-ffmpeg-extra-configure=\"--target-os=linux\" "
>> 
>> +# yasm not found, use --disable-yasm for a crippled build for libav
>> +EXTRA_OECONF_append_x86-64 = " --disable-yasm "
>> +EXTRA_OECONF_append_x86 = " --disable-yasm "
> 
> Since yasm is x86 only it should be safe go globally disable it, no? And a
> related question: why isn't this bulding against an external libav like
> OE-classic does?

Libav recipe in OE doesn't disable yasm globally. So I didn't.
The answer for the second question: the tar bar for the new version of gst-ffmpeg contains libav code and its configure in ffmpeg's configure.ac

--
Shane




More information about the Openembedded-core mailing list