blob: 891b10ca4bd5836530227e4d094ea53698769737 [file] [log] [blame]
Patrick Williamsb48b7b42016-08-17 15:04:38 -05001SUMMARY = "FFmpeg-based GStreamer plug-in"
2SECTION = "multimedia"
3LICENSE = "GPLv2+ & LGPLv2+ & ( (GPLv2+ & LGPLv2.1+) | (GPLv3+ & LGPLv3+) )"
4LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
5 file://ext/libpostproc/gstpostproc.c;beginline=1;endline=18;md5=5896e445e41681324381f5869ee33d38 \
6 file://COPYING.LIB;md5=55ca817ccb7d5b5b66355690e9abc605 \
7 file://ext/ffmpeg/gstffmpeg.h;beginline=1;endline=18;md5=ff65467b0c53cdfa98d0684c1bc240a9 \
8 file://gst-libs/ext/libav/LICENSE;md5=abc3b8cb02856aa7823bbbd162d16232 \
9 file://gst-libs/ext/libav/COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
10 file://gst-libs/ext/libav/COPYING.GPLv3;md5=d32239bcb673463ab874e80d47fae504 \
11 file://gst-libs/ext/libav/COPYING.LGPLv2.1;md5=e344c8fa836c3a41c4cbd79d7bd3a379 \
12 file://gst-libs/ext/libav/COPYING.LGPLv3;md5=e6a600fd5e1d9cbde2d983680233ad02"
13LICENSE_FLAGS = "commercial"
14HOMEPAGE = "http://www.gstreamer.net/"
15DEPENDS = "gstreamer gst-plugins-base zlib bzip2 yasm-native libpostproc"
16
17inherit autotools-brokensep pkgconfig
18
19SRC_URI = "http://gstreamer.freedesktop.org/src/${BPN}/${BPN}-${PV}.tar.bz2 \
20 file://lower-rank.diff \
21 file://configure-fix.patch \
22 file://h264_qpel_mmx.patch \
23 file://libav_e500mc.patch \
24 file://libav_e5500.patch \
25 file://gst-ffmpeg-CVE-2013-3674.patch \
26 file://0001-avformat-mpegtsenc-Check-data-array-size-in-mpegts_w.patch \
27 file://0001-vqavideo-check-chunk-sizes-before-reading-chunks.patch \
28 file://0001-avcodec-msrle-use-av_image_get_linesize-to-calculate.patch \
29 file://0001-huffyuvdec-Skip-len-0-cases.patch \
30 file://0001-huffyuvdec-Check-init_vlc-return-codes.patch \
31 file://0001-alsdec-check-block-length.patch \
32 file://0001-pgssubdec-check-RLE-size-before-copying.-Fix-out-of-.patch \
33 file://0001-atrac3dec-Check-coding-mode-against-channels.patch \
34 file://0001-eamad-fix-out-of-array-accesses.patch \
35 file://0001-mjpegdec-check-SE.patch \
36 file://0001-alac-fix-nb_samples-order-case.patch \
37 file://0001-h264-correct-ref-count-check-and-limit-fix-out-of-ar.patch \
38 file://0001-roqvideodec-check-dimensions-validity.patch \
39 file://0001-aacdec-check-channel-count.patch \
40 file://0001-pngdec-filter-dont-access-out-of-array-elements-at-t.patch \
41 file://0001-error_concealment-Check-that-the-picture-is-not-in-a.patch \
42 file://0001-vp3-fix-oob-read-for-negative-tokens-and-memleaks-on.patch \
43 file://0001-vp3-Copy-all-3-frames-for-thread-updates.patch \
44 file://0001-h264_sei-Fix-infinite-loop.patch \
45 file://0001-avcodec-parser-reset-indexes-on-realloc-failure.patch \
46 file://0001-avcodec-rpza-Perform-pointer-advance-and-checks-befo.patch \
47 file://gst-ffmpeg-CVE-2013-0855.patch \
48 file://0001-qdm2dec-fix-buffer-overflow.patch \
49 file://0001-smackerdec-Check-that-the-last-indexes-are-within-th.patch \
50 file://0001-avcodec-dsputil-fix-signedness-in-sizeof-comparissio.patch \
51 file://0001-error-concealment-initialize-block-index.patch \
52 file://0001-qdm2-check-array-index-before-use-fix-out-of-array-a.patch \
53 file://0001-lavf-compute-probe-buffer-size-more-reliably.patch \
54 file://0001-ffserver-set-oformat.patch \
55 file://0001-h264-set-parameters-from-SPS-whenever-it-changes.patch \
56 file://0001-h264-skip-error-concealment-when-SPS-and-slices-are-.patch \
57 file://0001-avcodec-smc-fix-off-by-1-error.patch \
58 file://0002-avcodec-mjpegdec-check-bits-per-pixel-for-changes-si.patch \
59 file://libav-9.patch \
60 file://gst-ffmpeg-fix-CVE-2011-4352.patch \
61 file://gst-ffmpeg-fix-CVE-2014-7933.patch \
62 file://gst-ffmpeg-fix-CVE-2014-8542.patch \
63 file://gst-ffmpeg-fix-CVE-2014-8543.patch \
64 file://gst-ffmpeg-fix-CVE-2014-8544.patch \
65 file://gst-ffmpeg-fix-CVE-2014-8545.patch \
66 file://gst-ffmpeg-fix-CVE-2014-8546.patch \
67 file://gst-ffmpeg-fix-CVE-2014-8547.patch \
68 file://gst-ffmpeg-fix-CVE-2014-9318.patch \
69 file://gst-ffmpeg-fix-CVE-2014-9603.patch \
70"
71
72SRC_URI[md5sum] = "7f5beacaf1312db2db30a026b36888c4"
73SRC_URI[sha256sum] = "76fca05b08e00134e3cb92fa347507f42cbd48ddb08ed3343a912def187fbb62"
74
75PR = "r8"
76
77GSTREAMER_DEBUG ?= "--disable-debug"
78
79FFMPEG_EXTRA_CONFIGURE = "--with-ffmpeg-extra-configure"
80# pass --cpu for powerpc. get cpu name by stripping "ppc" or "ppc64"
81# from DEFAULTTUNE
82FFMPEG_CPU_powerpc = "--cpu=${@d.getVar('DEFAULTTUNE', False)[3:]}"
83FFMPEG_CPU_powerpc64 = "--cpu=${@d.getVar('DEFAULTTUNE', False)[5:]}"
84FFMPEG_EXTRA_CONFIGURE_COMMON_ARG = "--target-os=linux ${FFMPEG_CPU} \
85 --cc='${CC}' --as='${CC}' --ld='${CC}' --nm='${NM}' --ar='${AR}' \
86 --ranlib='${RANLIB}' \
87 ${GSTREAMER_DEBUG}"
88FFMPEG_EXTRA_CONFIGURE_COMMON = \
89'${FFMPEG_EXTRA_CONFIGURE}="${FFMPEG_EXTRA_CONFIGURE_COMMON_ARG}"'
90
91EXTRA_OECONF = "${FFMPEG_EXTRA_CONFIGURE_COMMON}"
92
93PACKAGECONFIG ??= "external-libav"
94PACKAGECONFIG[external-libav] = "--with-system-ffmpeg,,libav"
95PACKAGECONFIG[orc] = "--enable-orc,--disable-orc,orc"
96
97FILES_${PN} += "${libdir}/gstreamer-0.10/*.so"
98FILES_${PN}-dbg += "${libdir}/gstreamer-0.10/.debug"
99FILES_${PN}-dev += "${libdir}/gstreamer-0.10/*.la"
100FILES_${PN}-staticdev += "${libdir}/gstreamer-0.10/*.a"
101
102# http://errors.yoctoproject.org/Errors/Details/40736/
103PNBLACKLIST[gst-ffmpeg] ?= "Not compatible with currently used ffmpeg 3"