ffmpeg: contrib -> opt

This commit is contained in:
Danny Rawlins 2019-08-31 18:34:14 +10:00
parent b3cd769921
commit a1f75e8772
5 changed files with 296 additions and 0 deletions

209
ffmpeg/.footprint Normal file
View File

@ -0,0 +1,209 @@
drwxr-xr-x root/root usr/
drwxr-xr-x root/root usr/bin/
-rwxr-xr-x root/root usr/bin/ffmpeg
-rwxr-xr-x root/root usr/bin/ffprobe
drwxr-xr-x root/root usr/include/
drwxr-xr-x root/root usr/include/libavcodec/
-rw-r--r-- root/root usr/include/libavcodec/ac3_parser.h
-rw-r--r-- root/root usr/include/libavcodec/adts_parser.h
-rw-r--r-- root/root usr/include/libavcodec/avcodec.h
-rw-r--r-- root/root usr/include/libavcodec/avdct.h
-rw-r--r-- root/root usr/include/libavcodec/avfft.h
-rw-r--r-- root/root usr/include/libavcodec/d3d11va.h
-rw-r--r-- root/root usr/include/libavcodec/dirac.h
-rw-r--r-- root/root usr/include/libavcodec/dv_profile.h
-rw-r--r-- root/root usr/include/libavcodec/dxva2.h
-rw-r--r-- root/root usr/include/libavcodec/jni.h
-rw-r--r-- root/root usr/include/libavcodec/mediacodec.h
-rw-r--r-- root/root usr/include/libavcodec/qsv.h
-rw-r--r-- root/root usr/include/libavcodec/vaapi.h
-rw-r--r-- root/root usr/include/libavcodec/vdpau.h
-rw-r--r-- root/root usr/include/libavcodec/version.h
-rw-r--r-- root/root usr/include/libavcodec/videotoolbox.h
-rw-r--r-- root/root usr/include/libavcodec/vorbis_parser.h
-rw-r--r-- root/root usr/include/libavcodec/xvmc.h
drwxr-xr-x root/root usr/include/libavdevice/
-rw-r--r-- root/root usr/include/libavdevice/avdevice.h
-rw-r--r-- root/root usr/include/libavdevice/version.h
drwxr-xr-x root/root usr/include/libavfilter/
-rw-r--r-- root/root usr/include/libavfilter/avfilter.h
-rw-r--r-- root/root usr/include/libavfilter/buffersink.h
-rw-r--r-- root/root usr/include/libavfilter/buffersrc.h
-rw-r--r-- root/root usr/include/libavfilter/version.h
drwxr-xr-x root/root usr/include/libavformat/
-rw-r--r-- root/root usr/include/libavformat/avformat.h
-rw-r--r-- root/root usr/include/libavformat/avio.h
-rw-r--r-- root/root usr/include/libavformat/version.h
drwxr-xr-x root/root usr/include/libavresample/
-rw-r--r-- root/root usr/include/libavresample/avresample.h
-rw-r--r-- root/root usr/include/libavresample/version.h
drwxr-xr-x root/root usr/include/libavutil/
-rw-r--r-- root/root usr/include/libavutil/adler32.h
-rw-r--r-- root/root usr/include/libavutil/aes.h
-rw-r--r-- root/root usr/include/libavutil/aes_ctr.h
-rw-r--r-- root/root usr/include/libavutil/attributes.h
-rw-r--r-- root/root usr/include/libavutil/audio_fifo.h
-rw-r--r-- root/root usr/include/libavutil/avassert.h
-rw-r--r-- root/root usr/include/libavutil/avconfig.h
-rw-r--r-- root/root usr/include/libavutil/avstring.h
-rw-r--r-- root/root usr/include/libavutil/avutil.h
-rw-r--r-- root/root usr/include/libavutil/base64.h
-rw-r--r-- root/root usr/include/libavutil/blowfish.h
-rw-r--r-- root/root usr/include/libavutil/bprint.h
-rw-r--r-- root/root usr/include/libavutil/bswap.h
-rw-r--r-- root/root usr/include/libavutil/buffer.h
-rw-r--r-- root/root usr/include/libavutil/camellia.h
-rw-r--r-- root/root usr/include/libavutil/cast5.h
-rw-r--r-- root/root usr/include/libavutil/channel_layout.h
-rw-r--r-- root/root usr/include/libavutil/common.h
-rw-r--r-- root/root usr/include/libavutil/cpu.h
-rw-r--r-- root/root usr/include/libavutil/crc.h
-rw-r--r-- root/root usr/include/libavutil/des.h
-rw-r--r-- root/root usr/include/libavutil/dict.h
-rw-r--r-- root/root usr/include/libavutil/display.h
-rw-r--r-- root/root usr/include/libavutil/downmix_info.h
-rw-r--r-- root/root usr/include/libavutil/encryption_info.h
-rw-r--r-- root/root usr/include/libavutil/error.h
-rw-r--r-- root/root usr/include/libavutil/eval.h
-rw-r--r-- root/root usr/include/libavutil/ffversion.h
-rw-r--r-- root/root usr/include/libavutil/fifo.h
-rw-r--r-- root/root usr/include/libavutil/file.h
-rw-r--r-- root/root usr/include/libavutil/frame.h
-rw-r--r-- root/root usr/include/libavutil/hash.h
-rw-r--r-- root/root usr/include/libavutil/hdr_dynamic_metadata.h
-rw-r--r-- root/root usr/include/libavutil/hmac.h
-rw-r--r-- root/root usr/include/libavutil/hwcontext.h
-rw-r--r-- root/root usr/include/libavutil/hwcontext_cuda.h
-rw-r--r-- root/root usr/include/libavutil/hwcontext_d3d11va.h
-rw-r--r-- root/root usr/include/libavutil/hwcontext_drm.h
-rw-r--r-- root/root usr/include/libavutil/hwcontext_dxva2.h
-rw-r--r-- root/root usr/include/libavutil/hwcontext_mediacodec.h
-rw-r--r-- root/root usr/include/libavutil/hwcontext_qsv.h
-rw-r--r-- root/root usr/include/libavutil/hwcontext_vaapi.h
-rw-r--r-- root/root usr/include/libavutil/hwcontext_vdpau.h
-rw-r--r-- root/root usr/include/libavutil/hwcontext_videotoolbox.h
-rw-r--r-- root/root usr/include/libavutil/imgutils.h
-rw-r--r-- root/root usr/include/libavutil/intfloat.h
-rw-r--r-- root/root usr/include/libavutil/intreadwrite.h
-rw-r--r-- root/root usr/include/libavutil/lfg.h
-rw-r--r-- root/root usr/include/libavutil/log.h
-rw-r--r-- root/root usr/include/libavutil/lzo.h
-rw-r--r-- root/root usr/include/libavutil/macros.h
-rw-r--r-- root/root usr/include/libavutil/mastering_display_metadata.h
-rw-r--r-- root/root usr/include/libavutil/mathematics.h
-rw-r--r-- root/root usr/include/libavutil/md5.h
-rw-r--r-- root/root usr/include/libavutil/mem.h
-rw-r--r-- root/root usr/include/libavutil/motion_vector.h
-rw-r--r-- root/root usr/include/libavutil/murmur3.h
-rw-r--r-- root/root usr/include/libavutil/opt.h
-rw-r--r-- root/root usr/include/libavutil/parseutils.h
-rw-r--r-- root/root usr/include/libavutil/pixdesc.h
-rw-r--r-- root/root usr/include/libavutil/pixelutils.h
-rw-r--r-- root/root usr/include/libavutil/pixfmt.h
-rw-r--r-- root/root usr/include/libavutil/random_seed.h
-rw-r--r-- root/root usr/include/libavutil/rational.h
-rw-r--r-- root/root usr/include/libavutil/rc4.h
-rw-r--r-- root/root usr/include/libavutil/replaygain.h
-rw-r--r-- root/root usr/include/libavutil/ripemd.h
-rw-r--r-- root/root usr/include/libavutil/samplefmt.h
-rw-r--r-- root/root usr/include/libavutil/sha.h
-rw-r--r-- root/root usr/include/libavutil/sha512.h
-rw-r--r-- root/root usr/include/libavutil/spherical.h
-rw-r--r-- root/root usr/include/libavutil/stereo3d.h
-rw-r--r-- root/root usr/include/libavutil/tea.h
-rw-r--r-- root/root usr/include/libavutil/threadmessage.h
-rw-r--r-- root/root usr/include/libavutil/time.h
-rw-r--r-- root/root usr/include/libavutil/timecode.h
-rw-r--r-- root/root usr/include/libavutil/timestamp.h
-rw-r--r-- root/root usr/include/libavutil/tree.h
-rw-r--r-- root/root usr/include/libavutil/twofish.h
-rw-r--r-- root/root usr/include/libavutil/tx.h
-rw-r--r-- root/root usr/include/libavutil/version.h
-rw-r--r-- root/root usr/include/libavutil/xtea.h
drwxr-xr-x root/root usr/include/libpostproc/
-rw-r--r-- root/root usr/include/libpostproc/postprocess.h
-rw-r--r-- root/root usr/include/libpostproc/version.h
drwxr-xr-x root/root usr/include/libswresample/
-rw-r--r-- root/root usr/include/libswresample/swresample.h
-rw-r--r-- root/root usr/include/libswresample/version.h
drwxr-xr-x root/root usr/include/libswscale/
-rw-r--r-- root/root usr/include/libswscale/swscale.h
-rw-r--r-- root/root usr/include/libswscale/version.h
drwxr-xr-x root/root usr/lib/
-rw-r--r-- root/root usr/lib/libavcodec.a
lrwxrwxrwx root/root usr/lib/libavcodec.so -> libavcodec.so.58.54.100
lrwxrwxrwx root/root usr/lib/libavcodec.so.58 -> libavcodec.so.58.54.100
-rwxr-xr-x root/root usr/lib/libavcodec.so.58.54.100
-rw-r--r-- root/root usr/lib/libavdevice.a
lrwxrwxrwx root/root usr/lib/libavdevice.so -> libavdevice.so.58.8.100
lrwxrwxrwx root/root usr/lib/libavdevice.so.58 -> libavdevice.so.58.8.100
-rwxr-xr-x root/root usr/lib/libavdevice.so.58.8.100
-rw-r--r-- root/root usr/lib/libavfilter.a
lrwxrwxrwx root/root usr/lib/libavfilter.so -> libavfilter.so.7.57.100
lrwxrwxrwx root/root usr/lib/libavfilter.so.7 -> libavfilter.so.7.57.100
-rwxr-xr-x root/root usr/lib/libavfilter.so.7.57.100
-rw-r--r-- root/root usr/lib/libavformat.a
lrwxrwxrwx root/root usr/lib/libavformat.so -> libavformat.so.58.29.100
lrwxrwxrwx root/root usr/lib/libavformat.so.58 -> libavformat.so.58.29.100
-rwxr-xr-x root/root usr/lib/libavformat.so.58.29.100
-rw-r--r-- root/root usr/lib/libavresample.a
lrwxrwxrwx root/root usr/lib/libavresample.so -> libavresample.so.4.0.0
lrwxrwxrwx root/root usr/lib/libavresample.so.4 -> libavresample.so.4.0.0
-rwxr-xr-x root/root usr/lib/libavresample.so.4.0.0
-rw-r--r-- root/root usr/lib/libavutil.a
lrwxrwxrwx root/root usr/lib/libavutil.so -> libavutil.so.56.31.100
lrwxrwxrwx root/root usr/lib/libavutil.so.56 -> libavutil.so.56.31.100
-rwxr-xr-x root/root usr/lib/libavutil.so.56.31.100
-rw-r--r-- root/root usr/lib/libpostproc.a
lrwxrwxrwx root/root usr/lib/libpostproc.so -> libpostproc.so.55.5.100
lrwxrwxrwx root/root usr/lib/libpostproc.so.55 -> libpostproc.so.55.5.100
-rwxr-xr-x root/root usr/lib/libpostproc.so.55.5.100
-rw-r--r-- root/root usr/lib/libswresample.a
lrwxrwxrwx root/root usr/lib/libswresample.so -> libswresample.so.3.5.100
lrwxrwxrwx root/root usr/lib/libswresample.so.3 -> libswresample.so.3.5.100
-rwxr-xr-x root/root usr/lib/libswresample.so.3.5.100
-rw-r--r-- root/root usr/lib/libswscale.a
lrwxrwxrwx root/root usr/lib/libswscale.so -> libswscale.so.5.5.100
lrwxrwxrwx root/root usr/lib/libswscale.so.5 -> libswscale.so.5.5.100
-rwxr-xr-x root/root usr/lib/libswscale.so.5.5.100
drwxr-xr-x root/root usr/lib/pkgconfig/
-rw-r--r-- root/root usr/lib/pkgconfig/libavcodec.pc
-rw-r--r-- root/root usr/lib/pkgconfig/libavdevice.pc
-rw-r--r-- root/root usr/lib/pkgconfig/libavfilter.pc
-rw-r--r-- root/root usr/lib/pkgconfig/libavformat.pc
-rw-r--r-- root/root usr/lib/pkgconfig/libavresample.pc
-rw-r--r-- root/root usr/lib/pkgconfig/libavutil.pc
-rw-r--r-- root/root usr/lib/pkgconfig/libpostproc.pc
-rw-r--r-- root/root usr/lib/pkgconfig/libswresample.pc
-rw-r--r-- root/root usr/lib/pkgconfig/libswscale.pc
drwxr-xr-x root/root usr/share/
drwxr-xr-x root/root usr/share/ffmpeg/
-rw-r--r-- root/root usr/share/ffmpeg/ffprobe.xsd
-rw-r--r-- root/root usr/share/ffmpeg/libvpx-1080p.ffpreset
-rw-r--r-- root/root usr/share/ffmpeg/libvpx-1080p50_60.ffpreset
-rw-r--r-- root/root usr/share/ffmpeg/libvpx-360p.ffpreset
-rw-r--r-- root/root usr/share/ffmpeg/libvpx-720p.ffpreset
-rw-r--r-- root/root usr/share/ffmpeg/libvpx-720p50_60.ffpreset
drwxr-xr-x root/root usr/share/man/
drwxr-xr-x root/root usr/share/man/man1/
-rw-r--r-- root/root usr/share/man/man1/ffmpeg-all.1.gz
-rw-r--r-- root/root usr/share/man/man1/ffmpeg-bitstream-filters.1.gz
-rw-r--r-- root/root usr/share/man/man1/ffmpeg-codecs.1.gz
-rw-r--r-- root/root usr/share/man/man1/ffmpeg-devices.1.gz
-rw-r--r-- root/root usr/share/man/man1/ffmpeg-filters.1.gz
-rw-r--r-- root/root usr/share/man/man1/ffmpeg-formats.1.gz
-rw-r--r-- root/root usr/share/man/man1/ffmpeg-protocols.1.gz
-rw-r--r-- root/root usr/share/man/man1/ffmpeg-resampler.1.gz
-rw-r--r-- root/root usr/share/man/man1/ffmpeg-scaler.1.gz
-rw-r--r-- root/root usr/share/man/man1/ffmpeg-utils.1.gz
-rw-r--r-- root/root usr/share/man/man1/ffmpeg.1.gz
-rw-r--r-- root/root usr/share/man/man1/ffprobe-all.1.gz
-rw-r--r-- root/root usr/share/man/man1/ffprobe.1.gz
drwxr-xr-x root/root usr/share/man/man3/
-rw-r--r-- root/root usr/share/man/man3/libavcodec.3.gz
-rw-r--r-- root/root usr/share/man/man3/libavdevice.3.gz
-rw-r--r-- root/root usr/share/man/man3/libavfilter.3.gz
-rw-r--r-- root/root usr/share/man/man3/libavformat.3.gz
-rw-r--r-- root/root usr/share/man/man3/libavutil.3.gz
-rw-r--r-- root/root usr/share/man/man3/libswresample.3.gz
-rw-r--r-- root/root usr/share/man/man3/libswscale.3.gz

7
ffmpeg/.signature Normal file
View File

@ -0,0 +1,7 @@
untrusted comment: verify with /etc/ports/opt.pub
RWSE3ohX2g5d/YfaCzBARS+uzIpYzoFI13moAsvlvWcc4X7aQa823MnZCpTNy9EpLYvec7WAMuupZkpw2S/0b4D/8no/BsO6Hgo=
SHA256 (Pkgfile) = 29ee5f4c6ce455e6dbf7e5bf1b0e2a5feafcbd408d6e8745efd65cdbb283b67c
SHA256 (.footprint) = 6a5c58c08fb6a322362cd2e6883caf7e5621e8e124f2b4b830199cfb997db8ed
SHA256 (ffmpeg-4.2.tar.bz2) = 306bde5f411e9ee04352d1d3de41bd3de986e42e2af2a4c44052dce1ada26fb8
SHA256 (ffmpeg-x264-10bit.sh) = dde9627c41800235fbcfe0f74d2181be96239a82cd2d0d277715dddb57eb9cb3
SHA256 (CVE-2018-6621.patch) = e3b9aff1fe9aef2d7153d7517f9c349beef27c2859bf1fb01076eeab263a445e

View File

@ -0,0 +1,11 @@
--- a/libavcodec/utvideodec.c 2017-12-11 05:35:09.000000000 +0800
+++ b/libavcodec/utvideodec.c 2018-02-06 15:54:54.872000000 +0800
@@ -561,7 +561,7 @@ static int decode_frame(AVCodecContext *
for (j = 0; j < c->slices; j++) {
slice_end = bytestream2_get_le32u(&gb);
if (slice_end < 0 || slice_end < slice_start ||
- bytestream2_get_bytes_left(&gb) < slice_end) {
+ bytestream2_get_bytes_left(&gb) < slice_end + 1024LL) {
av_log(avctx, AV_LOG_ERROR, "Incorrect slice size\n");
return AVERROR_INVALIDDATA;
}

65
ffmpeg/Pkgfile Normal file
View File

@ -0,0 +1,65 @@
# Description: Complete solution to record, convert and stream audio and video.
# URL: http://ffmpeg.org/
# Maintainer: Danny Rawlins, crux at romster dot me
# Depends on: yasm
# Optional: alsa-lib fdk-aac ffnvcodec-headers gnutls lame libass libsdl2 libtheora libva libvdpau libvorbis libvpx libwebp opus x264 x265 pulseaudio
name=ffmpeg
version=4.2
release=1
source=(https://ffmpeg.org/releases/$name-$version.tar.bz2
ffmpeg-x264-10bit.sh
CVE-2018-6621.patch)
build() {
cd $name-$version
#https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-6621
patch -p1 -i $SRC/CVE-2018-6621.patch
[ -e '/usr/lib/pkgconfig/ffnvcodec.pc' ] && PKGMK_FFMPEG+=' --enable-nvdec --enable-nvenc'
[ -e '/usr/lib/pkgconfig/libwebp.pc' ] && PKGMK_FFMPEG+=' --enable-libwebp'
[ -e '/usr/lib/pkgconfig/vdpau.pc' ] && PKGMK_FFMPEG+=' --enable-vdpau'
[ -e '/usr/lib/pkgconfig/freetype2.pc' ] && PKGMK_FFMPEG+=' --enable-libfreetype'
[ -e '/usr/lib/pkgconfig/x264.pc' ] && PKGMK_FFMPEG+=' --enable-libx264'
[ -e '/usr/lib/pkgconfig/x265.pc' ] && PKGMK_FFMPEG+=' --enable-libx265'
[ -e '/usr/lib/pkgconfig/libass.pc' ] && PKGMK_FFMPEG+=' --enable-libass'
[ -e '/usr/include/lame/lame.h' ] && PKGMK_FFMPEG+=' --enable-libmp3lame'
[ -e '/usr/lib/pkgconfig/opus.pc' ] && PKGMK_FFMPEG+=' --enable-libopus'
[ -e '/usr/lib/pkgconfig/vpx.pc' ] && PKGMK_FFMPEG+=' --enable-libvpx'
[ -e '/usr/lib/pkgconfig/vorbis.pc' ] && PKGMK_FFMPEG+=' --enable-libvorbis'
[ -e '/usr/lib/pkgconfig/theora.pc' ] && PKGMK_FFMPEG+=' --enable-libtheora'
[ -e '/usr/lib/pkgconfig/libpulse.pc' ] && PKGMK_FFMPEG+=' --enable-libpulse'
[ -e '/usr/lib/pkgconfig/fdk-aac.pc' ] && PKGMK_FFMPEG+=' --enable-libfdk-aac --enable-nonfree'
if [ -e '/usr/lib/pkgconfig/gnutls.pc' ]; then
PKGMK_FFMPEG+=' --enable-gnutls'
else
PKGMK_FFMPEG+=' --enable-openssl --enable-nonfree'
fi
./configure ${PKGMK_FFMPEG} \
--prefix=/usr \
--disable-debug \
--disable-doc \
--enable-gpl \
--enable-version3 \
--enable-shared \
--enable-pic \
--enable-ffplay \
--enable-avfilter \
--enable-postproc \
--enable-pthreads \
--enable-swresample \
--enable-avresample
make
make DESTDIR=$PKG install install-man
rm -r $PKG/usr/share/ffmpeg/examples
if [ -e '/usr/lib/pkgconfig/x264.pc' ]; then
install -m 0755 -D $SRC/ffmpeg-x264-10bit.sh \
$PKG/usr/bin/ffmpeg-x264-10bit
fi
}

View File

@ -0,0 +1,4 @@
#!/bin/sh
LD_LIBRARY_PATH="/usr/lib/libx264-10bit" ffmpeg