mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-11-25 12:29:32 +08:00
1d6e1be7ac
* [ffmpeg] use ffbuild/config.mak to get dependencies * [ffmpeg] bump port version * [ffmpeg] x-add-version * [ffmpeg] fix dependency issue on x64-linux * [ffmpeg] x-add-version * [ffmpeg] link order fix on linux * [ffmpeg] x-add-version * [ffmpeg] bump port version * [ffmpeg] x-add-version * [ffmpeg] exclude -lgcc and -lgcc_s (causes issues on azure for unknown reasons) * [ffmpeg] x-add-version * [ffmpeg] handle -lgcc and -lgcc_s appropriately * [ffmpeg] x-add-version * [ffmpeg] use x_vcpkg_pkgconfig_get_modules to get info, added some more fixes to generated for pkgconfig files * [ffmpeg] report dependencies (for now, helps debugging) * [vcpkg-pkgconfig-get-modules] bump port version * [ffmpeg] [vcpkg-pkgconfig-get-modules] x-add-version * [ffmpeg] fix variant issue * [ffmpeg] x-add-version * [ffmpeg] reformat manifest * [ffmpeg] x-add-version * [ffmpeg] remove duplicate avfilter library from dependencies * [ffmpeg] fix -pthread / -pthreads on linux * [ffmpeg] x-add-version * [ffmpeg] fix dynamic builds when no libraries need to be linked * [ffmpeg] x-add-version * [ffmpeg] disable openh264 on uwp when building all * [ffmpeg] x-add-version * [avcpp] fix uwp build failure due to deprecations treated as errors * [avcpp] bump port version * [avcpp] x-add-version * [avcpp] smaller patch * [avcpp] x-add-version * [ffmpeg] x-add-version
570 lines
13 KiB
JSON
570 lines
13 KiB
JSON
{
|
|
"name": "ffmpeg",
|
|
"version": "4.4",
|
|
"port-version": 3,
|
|
"description": [
|
|
"a library to decode, encode, transcode, mux, demux, stream, filter and play pretty much anything that humans and machines have created.",
|
|
"FFmpeg is the leading multimedia framework, able to decode, encode, transcode, mux, demux, stream, filter and play pretty much anything that humans and machines have created. It supports the most obscure ancient formats up to the cutting edge. No matter if they were designed by some standards committee, the community or a corporation. It is also highly portable: FFmpeg compiles, runs, and passes our testing infrastructure FATE across Linux, Mac OS X, Microsoft Windows, the BSDs, Solaris, etc. under a wide variety of build environments, machine architectures, and configurations."
|
|
],
|
|
"homepage": "https://ffmpeg.org",
|
|
"dependencies": [
|
|
{
|
|
"name": "vcpkg-pkgconfig-get-modules",
|
|
"host": true
|
|
}
|
|
],
|
|
"default-features": [
|
|
"avcodec",
|
|
"avdevice",
|
|
"avfilter",
|
|
"avformat",
|
|
"postproc",
|
|
"swresample",
|
|
"swscale"
|
|
],
|
|
"features": {
|
|
"all": {
|
|
"description": "Build with all allowed dependencies selected that are compatible with the lgpl license",
|
|
"dependencies": [
|
|
{
|
|
"name": "ffmpeg",
|
|
"features": [
|
|
"avresample",
|
|
"bzip2",
|
|
"freetype",
|
|
"iconv",
|
|
"lzma",
|
|
"mp3lame",
|
|
"openjpeg",
|
|
"opus",
|
|
"snappy",
|
|
"soxr",
|
|
"speex",
|
|
"theora",
|
|
"vorbis",
|
|
"vpx",
|
|
"webp",
|
|
"zlib"
|
|
]
|
|
},
|
|
{
|
|
"name": "ffmpeg",
|
|
"features": [
|
|
"sdl2"
|
|
],
|
|
"platform": "!osx"
|
|
},
|
|
{
|
|
"name": "ffmpeg",
|
|
"features": [
|
|
"opencl"
|
|
],
|
|
"platform": "!uwp"
|
|
},
|
|
{
|
|
"name": "ffmpeg",
|
|
"features": [
|
|
"openh264"
|
|
],
|
|
"platform": "!uwp"
|
|
},
|
|
{
|
|
"name": "ffmpeg",
|
|
"features": [
|
|
"xml2"
|
|
],
|
|
"platform": "!static"
|
|
},
|
|
{
|
|
"name": "ffmpeg",
|
|
"features": [
|
|
"ilbc"
|
|
],
|
|
"platform": "!(arm & uwp)"
|
|
},
|
|
{
|
|
"name": "ffmpeg",
|
|
"features": [
|
|
"ass"
|
|
],
|
|
"platform": "!(uwp | arm)"
|
|
},
|
|
{
|
|
"name": "ffmpeg",
|
|
"features": [
|
|
"fribidi"
|
|
],
|
|
"platform": "!(uwp | arm)"
|
|
},
|
|
{
|
|
"name": "ffmpeg",
|
|
"features": [
|
|
"ssh"
|
|
],
|
|
"platform": "!(uwp | arm) & !static"
|
|
},
|
|
{
|
|
"name": "ffmpeg",
|
|
"features": [
|
|
"dav1d"
|
|
],
|
|
"platform": "!(uwp | arm | x86 | osx)"
|
|
},
|
|
{
|
|
"name": "ffmpeg",
|
|
"features": [
|
|
"modplug"
|
|
],
|
|
"platform": "!(windows & static) & !uwp"
|
|
},
|
|
{
|
|
"name": "ffmpeg",
|
|
"features": [
|
|
"tensorflow"
|
|
],
|
|
"platform": "!(x86 | arm | uwp) & !static"
|
|
},
|
|
{
|
|
"name": "ffmpeg",
|
|
"features": [
|
|
"opengl"
|
|
],
|
|
"platform": "!uwp & !(windows & arm) & !osx"
|
|
},
|
|
{
|
|
"name": "ffmpeg",
|
|
"features": [
|
|
"nvcodec"
|
|
],
|
|
"platform": "(windows | linux) & !uwp & !arm"
|
|
},
|
|
{
|
|
"name": "ffmpeg",
|
|
"features": [
|
|
"tesseract"
|
|
],
|
|
"platform": "!uwp & !(windows & arm) & !static"
|
|
},
|
|
{
|
|
"name": "ffmpeg",
|
|
"features": [
|
|
"fontconfig"
|
|
],
|
|
"platform": "!(windows & static) & !(uwp | arm)"
|
|
}
|
|
]
|
|
},
|
|
"all-gpl": {
|
|
"description": "Build with all allowed dependencies selected that are compatible with the gpl license",
|
|
"dependencies": [
|
|
{
|
|
"name": "ffmpeg",
|
|
"features": [
|
|
"all",
|
|
"gpl"
|
|
]
|
|
},
|
|
{
|
|
"name": "ffmpeg",
|
|
"features": [
|
|
"x264"
|
|
],
|
|
"platform": "!arm"
|
|
},
|
|
{
|
|
"name": "ffmpeg",
|
|
"features": [
|
|
"x265"
|
|
],
|
|
"platform": "!arm & !uwp"
|
|
},
|
|
{
|
|
"name": "ffmpeg",
|
|
"features": [
|
|
"avisynthplus"
|
|
],
|
|
"platform": "windows & !arm & !uwp & !static"
|
|
}
|
|
]
|
|
},
|
|
"all-nonfree": {
|
|
"description": "Build with all allowed dependencies selected with a non-redistributable license",
|
|
"dependencies": [
|
|
{
|
|
"name": "ffmpeg",
|
|
"features": [
|
|
"all-gpl",
|
|
"nonfree",
|
|
"openssl"
|
|
]
|
|
},
|
|
{
|
|
"name": "ffmpeg",
|
|
"features": [
|
|
"fdk-aac"
|
|
],
|
|
"platform": "!arm & !uwp"
|
|
}
|
|
]
|
|
},
|
|
"ass": {
|
|
"description": "Libass subtitles rendering, needed for subtitles and ass filter support in ffmpeg",
|
|
"dependencies": [
|
|
"libass"
|
|
]
|
|
},
|
|
"avcodec": {
|
|
"description": "Build the avcodec library"
|
|
},
|
|
"avdevice": {
|
|
"description": "Build the avdevice library",
|
|
"dependencies": [
|
|
{
|
|
"name": "ffmpeg",
|
|
"default-features": false,
|
|
"features": [
|
|
"avcodec",
|
|
"avformat"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"avfilter": {
|
|
"description": "Build the avfilter library"
|
|
},
|
|
"avformat": {
|
|
"description": "Build the avformat library",
|
|
"dependencies": [
|
|
{
|
|
"name": "ffmpeg",
|
|
"default-features": false,
|
|
"features": [
|
|
"avcodec"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"avisynthplus": {
|
|
"description": "Reading of AviSynth script files",
|
|
"dependencies": [
|
|
"avisynthplus",
|
|
{
|
|
"name": "ffmpeg",
|
|
"default-features": false,
|
|
"features": [
|
|
"gpl"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"avresample": {
|
|
"description": "Build the avresample library"
|
|
},
|
|
"bzip2": {
|
|
"description": "Bzip2 support",
|
|
"dependencies": [
|
|
"bzip2"
|
|
]
|
|
},
|
|
"dav1d": {
|
|
"description": "AV1 decoding via libdav1d",
|
|
"dependencies": [
|
|
"dav1d"
|
|
]
|
|
},
|
|
"fdk-aac": {
|
|
"description": "AAC de/encoding via libfdk-aac",
|
|
"dependencies": [
|
|
"fdk-aac",
|
|
{
|
|
"name": "ffmpeg",
|
|
"default-features": false,
|
|
"features": [
|
|
"nonfree"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"ffmpeg": {
|
|
"description": "Build the ffmpeg application",
|
|
"dependencies": [
|
|
{
|
|
"name": "ffmpeg",
|
|
"default-features": false,
|
|
"features": [
|
|
"avcodec",
|
|
"avfilter",
|
|
"avformat"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"ffplay": {
|
|
"description": "Build the ffplay application",
|
|
"dependencies": [
|
|
{
|
|
"name": "ffmpeg",
|
|
"default-features": false,
|
|
"features": [
|
|
"avcodec",
|
|
"avfilter",
|
|
"avformat",
|
|
"sdl2",
|
|
"swresample",
|
|
"swscale"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"ffprobe": {
|
|
"description": "Build the ffprobe application",
|
|
"dependencies": [
|
|
{
|
|
"name": "ffmpeg",
|
|
"default-features": false,
|
|
"features": [
|
|
"avcodec",
|
|
"avformat"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"fontconfig": {
|
|
"description": "Useful for drawtext filter",
|
|
"dependencies": [
|
|
"fontconfig"
|
|
]
|
|
},
|
|
"freetype": {
|
|
"description": "Needed for drawtext filter",
|
|
"dependencies": [
|
|
"freetype"
|
|
]
|
|
},
|
|
"fribidi": {
|
|
"description": "Improves drawtext filter",
|
|
"dependencies": [
|
|
"fribidi"
|
|
]
|
|
},
|
|
"gpl": {
|
|
"description": "Allow use of GPL code, the resulting libs and binaries will be under GPL"
|
|
},
|
|
"iconv": {
|
|
"description": "Iconv support",
|
|
"dependencies": [
|
|
"libiconv"
|
|
]
|
|
},
|
|
"ilbc": {
|
|
"description": "iLBC de/encoding via libilbc",
|
|
"dependencies": [
|
|
"libilbc"
|
|
]
|
|
},
|
|
"lzma": {
|
|
"description": "lzma support",
|
|
"dependencies": [
|
|
"liblzma"
|
|
]
|
|
},
|
|
"modplug": {
|
|
"description": "ModPlug via libmodplug",
|
|
"dependencies": [
|
|
"libmodplug"
|
|
]
|
|
},
|
|
"mp3lame": {
|
|
"description": "MP3 encoding via libmp3lame",
|
|
"dependencies": [
|
|
"mp3lame"
|
|
]
|
|
},
|
|
"nonfree": {
|
|
"description": "Allow use of nonfree code, the resulting libs and binaries will be unredistributable"
|
|
},
|
|
"nvcodec": {
|
|
"description": "Nvidia video decoding/encoding acceleration",
|
|
"dependencies": [
|
|
"ffnvcodec"
|
|
]
|
|
},
|
|
"opencl": {
|
|
"description": "OpenCL processing",
|
|
"dependencies": [
|
|
"opencl"
|
|
]
|
|
},
|
|
"opengl": {
|
|
"description": "OpenGL rendering",
|
|
"dependencies": [
|
|
"opengl",
|
|
"opengl-registry"
|
|
]
|
|
},
|
|
"openh264": {
|
|
"description": "H.264 de/encoding via openh264",
|
|
"dependencies": [
|
|
"openh264"
|
|
]
|
|
},
|
|
"openjpeg": {
|
|
"description": "JPEG 2000 de/encoding via OpenJPEG",
|
|
"dependencies": [
|
|
"openjpeg"
|
|
]
|
|
},
|
|
"openssl": {
|
|
"description": "Needed for https support if gnutls, libtls or mbedtls is not used",
|
|
"dependencies": [
|
|
{
|
|
"name": "ffmpeg",
|
|
"default-features": false,
|
|
"features": [
|
|
"nonfree"
|
|
]
|
|
},
|
|
"openssl"
|
|
]
|
|
},
|
|
"opus": {
|
|
"description": "Opus de/encoding via libopus",
|
|
"dependencies": [
|
|
"opus"
|
|
]
|
|
},
|
|
"postproc": {
|
|
"description": "Build the postproc library",
|
|
"dependencies": [
|
|
{
|
|
"name": "ffmpeg",
|
|
"default-features": false,
|
|
"features": [
|
|
"gpl"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"sdl2": {
|
|
"description": "Sdl2 support",
|
|
"dependencies": [
|
|
"sdl2"
|
|
]
|
|
},
|
|
"snappy": {
|
|
"description": "Snappy compression, needed for hap encoding",
|
|
"dependencies": [
|
|
"snappy"
|
|
]
|
|
},
|
|
"soxr": {
|
|
"description": "Include libsoxr resampling",
|
|
"dependencies": [
|
|
{
|
|
"name": "ffmpeg",
|
|
"default-features": false,
|
|
"features": [
|
|
"swresample"
|
|
]
|
|
},
|
|
"soxr"
|
|
]
|
|
},
|
|
"speex": {
|
|
"description": "Speex de/encoding via libspeex",
|
|
"dependencies": [
|
|
"speex"
|
|
]
|
|
},
|
|
"ssh": {
|
|
"description": "SFTP protocol via libssh",
|
|
"dependencies": [
|
|
"libssh"
|
|
]
|
|
},
|
|
"swresample": {
|
|
"description": "Build the swresample library"
|
|
},
|
|
"swscale": {
|
|
"description": "Build the swscale library"
|
|
},
|
|
"tensorflow": {
|
|
"description": "TensorFlow as a DNN module backend for DNN based filters like sr",
|
|
"dependencies": [
|
|
"tensorflow"
|
|
]
|
|
},
|
|
"tesseract": {
|
|
"description": "Tesseract, needed for ocr filter",
|
|
"dependencies": [
|
|
"tesseract"
|
|
]
|
|
},
|
|
"theora": {
|
|
"description": "Theora encoding via libtheora",
|
|
"dependencies": [
|
|
"libtheora"
|
|
]
|
|
},
|
|
"version3": {
|
|
"description": "Upgrade (L)GPL to version 3"
|
|
},
|
|
"vorbis": {
|
|
"description": "Vorbis en/decoding via libvorbis, native implementation exists",
|
|
"dependencies": [
|
|
"libvorbis"
|
|
]
|
|
},
|
|
"vpx": {
|
|
"description": "VP8 and VP9 de/encoding via libvpx",
|
|
"dependencies": [
|
|
"libvpx"
|
|
]
|
|
},
|
|
"webp": {
|
|
"description": "WebP encoding via libwebp",
|
|
"dependencies": [
|
|
"libwebp"
|
|
]
|
|
},
|
|
"x264": {
|
|
"description": "H.264 encoding via x264",
|
|
"dependencies": [
|
|
{
|
|
"name": "ffmpeg",
|
|
"default-features": false,
|
|
"features": [
|
|
"gpl"
|
|
]
|
|
},
|
|
"x264"
|
|
]
|
|
},
|
|
"x265": {
|
|
"description": "HEVC encoding via x265",
|
|
"dependencies": [
|
|
{
|
|
"name": "ffmpeg",
|
|
"default-features": false,
|
|
"features": [
|
|
"gpl"
|
|
]
|
|
},
|
|
"x265"
|
|
]
|
|
},
|
|
"xml2": {
|
|
"description": "XML parsing using the C library libxml2, needed for dash demuxing support",
|
|
"dependencies": [
|
|
"libxml2"
|
|
]
|
|
},
|
|
"zlib": {
|
|
"description": "zlib support",
|
|
"dependencies": [
|
|
"zlib"
|
|
]
|
|
}
|
|
}
|
|
}
|