Patrick Williams | b48b7b4 | 2016-08-17 15:04:38 -0500 | [diff] [blame^] | 1 | SUMMARY = "FFmpeg-based GStreamer plug-in" |
| 2 | SECTION = "multimedia" |
| 3 | LICENSE = "GPLv2+ & LGPLv2+ & ( (GPLv2+ & LGPLv2.1+) | (GPLv3+ & LGPLv3+) )" |
| 4 | LIC_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" |
| 13 | LICENSE_FLAGS = "commercial" |
| 14 | HOMEPAGE = "http://www.gstreamer.net/" |
| 15 | DEPENDS = "gstreamer gst-plugins-base zlib bzip2 yasm-native libpostproc" |
| 16 | |
| 17 | inherit autotools-brokensep pkgconfig |
| 18 | |
| 19 | SRC_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 | |
| 72 | SRC_URI[md5sum] = "7f5beacaf1312db2db30a026b36888c4" |
| 73 | SRC_URI[sha256sum] = "76fca05b08e00134e3cb92fa347507f42cbd48ddb08ed3343a912def187fbb62" |
| 74 | |
| 75 | PR = "r8" |
| 76 | |
| 77 | GSTREAMER_DEBUG ?= "--disable-debug" |
| 78 | |
| 79 | FFMPEG_EXTRA_CONFIGURE = "--with-ffmpeg-extra-configure" |
| 80 | # pass --cpu for powerpc. get cpu name by stripping "ppc" or "ppc64" |
| 81 | # from DEFAULTTUNE |
| 82 | FFMPEG_CPU_powerpc = "--cpu=${@d.getVar('DEFAULTTUNE', False)[3:]}" |
| 83 | FFMPEG_CPU_powerpc64 = "--cpu=${@d.getVar('DEFAULTTUNE', False)[5:]}" |
| 84 | FFMPEG_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}" |
| 88 | FFMPEG_EXTRA_CONFIGURE_COMMON = \ |
| 89 | '${FFMPEG_EXTRA_CONFIGURE}="${FFMPEG_EXTRA_CONFIGURE_COMMON_ARG}"' |
| 90 | |
| 91 | EXTRA_OECONF = "${FFMPEG_EXTRA_CONFIGURE_COMMON}" |
| 92 | |
| 93 | PACKAGECONFIG ??= "external-libav" |
| 94 | PACKAGECONFIG[external-libav] = "--with-system-ffmpeg,,libav" |
| 95 | PACKAGECONFIG[orc] = "--enable-orc,--disable-orc,orc" |
| 96 | |
| 97 | FILES_${PN} += "${libdir}/gstreamer-0.10/*.so" |
| 98 | FILES_${PN}-dbg += "${libdir}/gstreamer-0.10/.debug" |
| 99 | FILES_${PN}-dev += "${libdir}/gstreamer-0.10/*.la" |
| 100 | FILES_${PN}-staticdev += "${libdir}/gstreamer-0.10/*.a" |
| 101 | |
| 102 | # http://errors.yoctoproject.org/Errors/Details/40736/ |
| 103 | PNBLACKLIST[gst-ffmpeg] ?= "Not compatible with currently used ffmpeg 3" |