FFmpegKit
is a collection of tools to use FFmpeg
in iOS
, macOS
, tvOS
, xrOS
, visionOS
applications.
It includes scripts to build FFmpeg
native libraries, three executable product ffplay
/ffmpeg
/ffprobe
in macos
- Scripts to build FFmpeg native libraries
- three executable product
ffplay
/ffmpeg
/ffprobe
in macos - Supports native platforms:
iOS
,macOS
,tvOS
,xrOS
,visionOS
- Build MPV
dependencies: [
.package(url: "https://github.com/kingslay/FFmpegKit.git", .branch("main"))
]
swift package --disable-sandbox BuildFFmpeg
/// build MPV
swift package --disable-sandbox BuildFFmpeg enable-vulkan enable-libplacebo enable-libdav1d enable-openssl enable-libsrt enable-libzvbi enable-png enable-libfreetype enable-libfribidi enable-harfbuzz enable-libass enable-FFmpeg enable-mpv platforms=macos
swift run ffplay
swift run ffmpeg
swift run ffprobe
swift package BuildFFmpeg -h
Usage: swift package BuildFFmpeg [OPTION]...
Default Build: swift package --disable-sandbox BuildFFmpeg enable-vulkan enable-libplacebo enable-libdav1d enable-openssl enable-libsrt enable-libzvbi enable-FFmpeg
Build MPV: swift package --disable-sandbox BuildFFmpeg mpv or swift package --disable-sandbox BuildFFmpeg enable-vulkan enable-libplacebo enable-libdav1d enable-openssl enable-libsrt enable-libzvbi enable-png enable-libfreetype enable-libfribidi enable-harfbuzz enable-libass enable-FFmpeg enable-mpv
Options:
h, -h, --help display this help and exit
enable-debug, build ffmpeg with debug information
platforms=xros deployment platform: macos,ios,isimulator,tvos,tvsimulator,maccatalyst,xros,xrsimulator,watchos,watchsimulator
--xx add ffmpeg Configuers
mpv build mpv
Libraries:
enable-vulkan build with vulkan
enable-libplacebo build with placebo
enable-libdav1d build with dav1d
enable-openssl build with openssl
enable-libzvbi build with libzvbi
enable-libsrt depend enable-openssl
enable-libfreetype depend enable-png [no]
enable-libass depend enable-png enable-libfreetype enable-libfribidi enable-harfbuzz [no]
enable-nettle depend enable-gmp [no]
enable-gnutls depend enable-gmp enable-nettle [no]
enable-libsmbclient depend enable-gmp enable-nettle enable-gnutls [no]
enable-harfbuzz depend enable-libfreetype [no]
enable-FFmpeg build with FFmpeg
enable-mpv depend enable-png enable-libfreetype enable-libfribidi enable-harfbuzz enable-libass [no]