pkgsrc/multimedia/ffmpeg4/options.mk

230 lines
6 KiB
Makefile
Raw Normal View History

2018-04-30 11:00:45 +02:00
# $NetBSD: options.mk,v 1.2 2018/04/30 09:00:46 adam Exp $
ffmpeg4/ffplay4: added version 4.0 version 4.0: - Bitstream filters for editing metadata in H.264, HEVC and MPEG-2 streams - Dropped support for OpenJPEG versions 2.0 and below. Using OpenJPEG now requires 2.1 (or later) and pkg-config. - VDA dropped (use VideoToolbox instead) - MagicYUV encoder - Raw AMR-NB and AMR-WB demuxers - TiVo ty/ty+ demuxer - Intel QSV-accelerated MJPEG encoding - PCE support for extended channel layouts in the AAC encoder - native aptX and aptX HD encoder and decoder - Raw aptX and aptX HD muxer and demuxer - NVIDIA NVDEC-accelerated H.264, HEVC, MJPEG, MPEG-1/2/4, VC1, VP8/9 hwaccel decoding - Intel QSV-accelerated overlay filter - mcompand audio filter - acontrast audio filter - OpenCL overlay filter - video mix filter - video normalize filter - audio lv2 wrapper filter - VAAPI MJPEG and VP8 decoding - AMD AMF H.264 and HEVC encoders - video fillborders filter - video setrange filter - nsp demuxer - support LibreSSL (via libtls) - AVX-512/ZMM support added - Dropped support for building for Windows XP. The minimum supported Windows version is Windows Vista. - deconvolve video filter - entropy video filter - hilbert audio filter source - aiir audio filter - aiff: add support for CD-ROM XA ADPCM - Removed the ffserver program - Removed the ffmenc and ffmdec muxer and demuxer - VideoToolbox HEVC encoder and hwaccel - VAAPI-accelerated ProcAmp (color balance), denoise and sharpness filters - Add android_camera indev - codec2 en/decoding via libcodec2 - muxer/demuxer for raw codec2 files and .c2 files - Moved nvidia codec headers into an external repository. They can be found at http://git.videolan.org/?p=ffmpeg/nv-codec-headers.git - native SBC encoder and decoder - drmeter audio filter - hapqa_extract bitstream filter - filter_units bitstream filter - AV1 Support through libaom - E-AC-3 dependent frames support - bitstream filter for extracting E-AC-3 core - Haivision SRT protocol via libsrt - segafilm muxer - vfrdet filter
2018-04-26 09:56:57 +02:00
# Global and legacy options
PKG_OPTIONS_VAR= PKG_OPTIONS.ffmpeg4
PKG_SUPPORTED_OPTIONS= ass bluray doc fdk-aac fontconfig freetype gnutls \
2018-04-30 11:00:45 +02:00
lame libvpx opencore-amr openssl opus rpi rtmp \
tesseract theora vorbis x11 x264 x265 xcb xvid
ffmpeg4/ffplay4: added version 4.0 version 4.0: - Bitstream filters for editing metadata in H.264, HEVC and MPEG-2 streams - Dropped support for OpenJPEG versions 2.0 and below. Using OpenJPEG now requires 2.1 (or later) and pkg-config. - VDA dropped (use VideoToolbox instead) - MagicYUV encoder - Raw AMR-NB and AMR-WB demuxers - TiVo ty/ty+ demuxer - Intel QSV-accelerated MJPEG encoding - PCE support for extended channel layouts in the AAC encoder - native aptX and aptX HD encoder and decoder - Raw aptX and aptX HD muxer and demuxer - NVIDIA NVDEC-accelerated H.264, HEVC, MJPEG, MPEG-1/2/4, VC1, VP8/9 hwaccel decoding - Intel QSV-accelerated overlay filter - mcompand audio filter - acontrast audio filter - OpenCL overlay filter - video mix filter - video normalize filter - audio lv2 wrapper filter - VAAPI MJPEG and VP8 decoding - AMD AMF H.264 and HEVC encoders - video fillborders filter - video setrange filter - nsp demuxer - support LibreSSL (via libtls) - AVX-512/ZMM support added - Dropped support for building for Windows XP. The minimum supported Windows version is Windows Vista. - deconvolve video filter - entropy video filter - hilbert audio filter source - aiir audio filter - aiff: add support for CD-ROM XA ADPCM - Removed the ffserver program - Removed the ffmenc and ffmdec muxer and demuxer - VideoToolbox HEVC encoder and hwaccel - VAAPI-accelerated ProcAmp (color balance), denoise and sharpness filters - Add android_camera indev - codec2 en/decoding via libcodec2 - muxer/demuxer for raw codec2 files and .c2 files - Moved nvidia codec headers into an external repository. They can be found at http://git.videolan.org/?p=ffmpeg/nv-codec-headers.git - native SBC encoder and decoder - drmeter audio filter - hapqa_extract bitstream filter - filter_units bitstream filter - AV1 Support through libaom - E-AC-3 dependent frames support - bitstream filter for extracting E-AC-3 core - Haivision SRT protocol via libsrt - segafilm muxer - vfrdet filter
2018-04-26 09:56:57 +02:00
PKG_SUGGESTED_OPTIONS= lame ass bluray freetype fontconfig libvpx openssl \
theora vorbis x11 x264 xvid
PLIST_VARS+= doc
# Add VDPAU if it is available
.include "../../multimedia/libvdpau/available.mk"
.if ${VDPAU_AVAILABLE} == "yes"
PKG_SUPPORTED_OPTIONS+= vdpau
PKG_SUGGESTED_OPTIONS+= vdpau
.endif
# Add VAAPI if it is available
.include "../../multimedia/libva/available.mk"
.if ${VAAPI_AVAILABLE} == "yes"
PKG_SUPPORTED_OPTIONS+= vaapi
PKG_SUGGESTED_OPTIONS+= vaapi
.endif
.include "../../mk/bsd.options.mk"
# Fontconfig
.if !empty(PKG_OPTIONS:Mfontconfig)
USE_TOOLS+= pkg-config
CONFIGURE_ARGS+= --enable-fontconfig
.include "../../fonts/fontconfig/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-fontconfig
.endif
# freetype option
.if !empty(PKG_OPTIONS:Mfreetype)
USE_TOOLS+= pkg-config
CONFIGURE_ARGS+= --enable-libfreetype
.include "../../graphics/freetype2/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-libfreetype
.endif
# ass option
.if !empty(PKG_OPTIONS:Mass)
USE_TOOLS+= pkg-config
CONFIGURE_ARGS+= --enable-libass
.include "../../multimedia/libass/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-libass
.endif
# doc option
.if !empty(PKG_OPTIONS:Mdoc)
PLIST.doc= yes
USE_TOOLS+= texi2html
CONFIGURE_ARGS+= --enable-htmlpages
.else
CONFIGURE_ARGS+= --disable-htmlpages
.endif
# Fraunhofer FDK AAC codec support
.if !empty(PKG_OPTIONS:Mfdk-aac)
RESTRICTED= This software may require the payment of patent royalties
NO_BIN_ON_CDROM= ${RESTRICTED}
NO_BIN_ON_FTP= ${RESTRICTED}
CONFIGURE_ARGS+= --enable-libfdk_aac
CONFIGURE_ARGS+= --enable-nonfree
.include "../../audio/fdk-aac/buildlink3.mk"
.endif
# GnuTLS support
.if !empty(PKG_OPTIONS:Mgnutls)
CONFIGURE_ARGS+= --enable-gnutls
.include "../../security/gnutls/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-gnutls
.endif
# opencore-amr option
.if !empty(PKG_OPTIONS:Mopencore-amr)
CONFIGURE_ARGS+= --enable-libopencore-amrnb
CONFIGURE_ARGS+= --enable-libopencore-amrwb
# "The OpenCORE external libraries are under the Apache License
# 2.0. That license is incompatible with the LGPL v2.1 and the GPL
# v2, but not with version 3 of those licenses. So to combine the
# OpenCORE libraries with FFmpeg, the license version needs to be
# upgraded by passing --enable-version3 to configure."
CONFIGURE_ARGS+= --enable-version3
# TODO: LICENSE
.include "../../audio/opencore-amr/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-libopencore-amrnb
CONFIGURE_ARGS+= --disable-libopencore-amrwb
.endif
# OpenSSL support
.if !empty(PKG_OPTIONS:Mopenssl)
CONFIGURE_ARGS+= --enable-nonfree
CONFIGURE_ARGS+= --enable-openssl
.include "../../security/openssl/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-openssl
.endif
# RTMP support via librtmp
.if !empty(PKG_OPTIONS:Mrtmp)
CONFIGURE_ARGS+= --enable-librtmp
.include "../../net/rtmpdump/buildlink3.mk"
.endif
2018-04-30 11:00:45 +02:00
# OCR filter using Tesseract
.if !empty(PKG_OPTIONS:Mtesseract)
CONFIGURE_ARGS+= --enable-libtesseract
.include "../../graphics/tesseract/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-libtesseract
.endif
ffmpeg4/ffplay4: added version 4.0 version 4.0: - Bitstream filters for editing metadata in H.264, HEVC and MPEG-2 streams - Dropped support for OpenJPEG versions 2.0 and below. Using OpenJPEG now requires 2.1 (or later) and pkg-config. - VDA dropped (use VideoToolbox instead) - MagicYUV encoder - Raw AMR-NB and AMR-WB demuxers - TiVo ty/ty+ demuxer - Intel QSV-accelerated MJPEG encoding - PCE support for extended channel layouts in the AAC encoder - native aptX and aptX HD encoder and decoder - Raw aptX and aptX HD muxer and demuxer - NVIDIA NVDEC-accelerated H.264, HEVC, MJPEG, MPEG-1/2/4, VC1, VP8/9 hwaccel decoding - Intel QSV-accelerated overlay filter - mcompand audio filter - acontrast audio filter - OpenCL overlay filter - video mix filter - video normalize filter - audio lv2 wrapper filter - VAAPI MJPEG and VP8 decoding - AMD AMF H.264 and HEVC encoders - video fillborders filter - video setrange filter - nsp demuxer - support LibreSSL (via libtls) - AVX-512/ZMM support added - Dropped support for building for Windows XP. The minimum supported Windows version is Windows Vista. - deconvolve video filter - entropy video filter - hilbert audio filter source - aiir audio filter - aiff: add support for CD-ROM XA ADPCM - Removed the ffserver program - Removed the ffmenc and ffmdec muxer and demuxer - VideoToolbox HEVC encoder and hwaccel - VAAPI-accelerated ProcAmp (color balance), denoise and sharpness filters - Add android_camera indev - codec2 en/decoding via libcodec2 - muxer/demuxer for raw codec2 files and .c2 files - Moved nvidia codec headers into an external repository. They can be found at http://git.videolan.org/?p=ffmpeg/nv-codec-headers.git - native SBC encoder and decoder - drmeter audio filter - hapqa_extract bitstream filter - filter_units bitstream filter - AV1 Support through libaom - E-AC-3 dependent frames support - bitstream filter for extracting E-AC-3 core - Haivision SRT protocol via libsrt - segafilm muxer - vfrdet filter
2018-04-26 09:56:57 +02:00
# OGG Theora support
.if !empty(PKG_OPTIONS:Mtheora)
CONFIGURE_ARGS+= --enable-libtheora
.include "../../multimedia/libtheora/buildlink3.mk"
.endif
# OGG Vorbis support
.if !empty(PKG_OPTIONS:Mvorbis)
CONFIGURE_ARGS+= --enable-libvorbis
.include "../../audio/libvorbis/buildlink3.mk"
.endif
# LAME MP3 encoder
.if !empty(PKG_OPTIONS:Mlame)
# "lame-3.98" isn't compatible with "ffmpeg" which breaks audio encoding.
BUILDLINK_ABI_DEPENDS.lame+= lame>=3.98.2nb1
CONFIGURE_ARGS+= --enable-libmp3lame
.include "../../audio/lame/buildlink3.mk"
.endif
# OPUS support
.if !empty(PKG_OPTIONS:Mopus)
CONFIGURE_ARGS+= --enable-libopus
.include "../../audio/libopus/buildlink3.mk"
.endif
# Raspberry Pi support
.if !empty(PKG_OPTIONS:Mrpi)
CONFIGURE_ARGS+= --disable-xvmc
CONFIGURE_ARGS+= --enable-omx-rpi
CONFIGURE_ARGS+= --enable-mmal
SUBST_CLASSES+= vc
SUBST_STAGE.vc= pre-configure
SUBST_MESSAGE.vc= Fixing path to VideoCore libraries.
SUBST_FILES.vc= configure
SUBST_SED.vc+= -e 's;-isystem/opt/vc;-I${PREFIX};g'
SUBST_SED.vc+= -e 's;/opt/vc;${PREFIX};g'
.include "../../misc/raspberrypi-userland/buildlink3.mk"
.endif
# XviD support
.if !empty(PKG_OPTIONS:Mxvid)
CONFIGURE_ARGS+= --enable-libxvid
.include "../../multimedia/xvidcore/buildlink3.mk"
.endif
# x264 support
.if !empty(PKG_OPTIONS:Mx264)
# ABI change between 20090326 and 20100201
BUILDLINK_API_DEPENDS.x264-devel+= x264-devel>=20111207
CONFIGURE_ARGS+= --enable-libx264
.include "../../multimedia/x264-devel/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-libx264
.endif
# x265 support
.if !empty(PKG_OPTIONS:Mx265)
CONFIGURE_ARGS+= --enable-libx265
.include "../../multimedia/x265/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-libx265
.endif
# VDPAU support
.if !empty(PKG_OPTIONS:Mvdpau) && !empty(PKG_OPTIONS:Mx11)
CONFIGURE_ARGS+= --enable-vdpau
.include "../../multimedia/libvdpau/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-vdpau
.endif
# VAAPI support
.if !empty(PKG_OPTIONS:Mvaapi) && !empty(PKG_OPTIONS:Mx11)
CONFIGURE_ARGS+= --enable-vaapi
.include "../../multimedia/libva/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-vaapi
.endif
# VPX support
.if !empty(PKG_OPTIONS:Mlibvpx)
CONFIGURE_ARGS+= --enable-libvpx
.include "../../multimedia/libvpx/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-libvpx
.endif
# X11 screen capture support using libxcb
.if !empty(PKG_OPTIONS:Mxcb)
CONFIGURE_ARGS+= --enable-libxcb
CONFIGURE_ARGS+= --enable-libxcb-shape
CONFIGURE_ARGS+= --enable-libxcb-shm
CONFIGURE_ARGS+= --enable-libxcb-xfixes
.include "../../x11/libxcb/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-libxcb
.endif
# Bluray support
.if !empty(PKG_OPTIONS:Mbluray)
CONFIGURE_ARGS+= --enable-libbluray
.include "../../multimedia/libbluray/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-libbluray
.endif