Official continuation of FFmpegKit. Supports Android, Flutter, iOS, iPadOS, Linux, macOS, React Native, tvOS, visionOS, Web (Wasm) and Windows
![]()
FFmpegKitNext is the official continuation of FFmpegKit.
It builds on the foundations of FFmpegKit while improving the build infrastructure to reduce build failures, simplify maintenance and support future platform updates.
FFmpegKitNext does not publish ready-to-use packages to Maven Central, CocoaPods, pub.dev, or npm as FFmpegKit did.
To use it, build it locally for your target platform via the Nix package manager or the MSYS2 / MinGW-w64 toolchain on Windows, then integrate the generated artifacts into your application.
FFmpegKitNext wrapper library to run FFmpeg/FFprobe commands in applicationsv6.1.x or later with optional system and external librariesLGPL 3.0 by default, GPL v3.0 if GPL licensed libraries are enabledSee Android to learn more about FFmpegKitNext for Android.
See Apple to use FFmpegKitNext on Apple platforms (iOS, iPadOS, macOS, tvOS, visionOS).
See Flutter to learn more about FFmpegKitNext for Flutter.
See Linux to learn more about FFmpegKitNext for Linux.
See React Native to learn more about FFmpegKitNext for React Native.
See Web to learn more about FFmpegKitNext for Web (WebAssembly).
See Windows to learn more about FFmpegKitNext for Windows.
FFmpegKitNext uses the Nix package manager as the default and recommended build environment. It provides pinned inputs, toolchains, and platform-specific build packages for supported hosts.
Install Nix on a supported host to build the project. Note that NixOS itself is not supported as a build host. See Host Support before setting up a machine or CI image.
Use nix-android.sh, nix-ios.sh (for both iOS and iPadOS), nix-linux.sh, nix-macos.sh, nix-tvos.sh, nix-visionos.sh and nix-web.sh to build FFmpegKitNext locally for Nix-supported target platforms.
Building FFmpegKitNext without Nix is also supported. The non-Nix build workflow, together with script options for enabling optional libraries and disabling target architectures is explained in the Building wiki page. Windows is built without Nix using the windows.sh script from the project root.
FFmpegKitNext is a wrapper library that allows you to easily run FFmpeg/FFprobe commands in applications. It
provides additional features on top of FFmpeg to enable platform specific resources, control how commands are
executed and how the results are handled.
Android library of FFmpegKitNext has a Kotlin API, Apple libraries (iOS, iPadOS, macOS, tvOS, visionOS) have an
Objective-C API, Flutter library comes with a Dart API, Linux has a C++ API, Windows has C++ and C APIs, React Native and Web
libraries provide a JavaScript API with Typescript definitions, which are identical in terms of features and
capabilities.
The table below lists the optional external libraries that can be enabled in local FFmpegKitNext builds.
Some parts of FFmpeg and some external libraries are licensed under the GPL. GPL libraries are included only when a GPL-enabled build variant is selected.
| library name | |
|---|---|
| external libraries | chromaprint dav1d fontconfig freetype fribidi gmp gnutls harfbuzz kvazaar lame libaom libass libiconv libilbc libjxl liblc3 libsvtav1 libtheora libvorbis libvpx libwebp libxml2 opencore-amr openh264 openssl opus rubberband sdl shine snappy soxr speex srt tesseract twolame vid.stab vo-amrwbenc vvenc x264 x265 xvidcore zimg zlib |
| android system libraries | zlib MediaCodec |
| ios/ipados system libraries | bzip2 AudioToolbox AVFoundation libiconv VideoToolbox zlib |
| linux system libraries | alsa libiconv OpenCL vaapi v4l2 zlib |
| macos system libraries | bzip2 AudioToolbox AVFoundation Core Image libiconv OpenCL OpenGL VideoToolbox zlib |
| tvos system libraries | bzip2 AudioToolbox libiconv VideoToolbox zlib |
| visionos system libraries | bzip2 AudioToolbox libiconv VideoToolbox zlib |
| web system libraries | iconv zlib |
AVFoundation is not available on tvOS and visionOSFFmpegKitNext binaries generated use the same major and minor version numbers as the upstream FFmpeg1 project. The
third and last number in the version string, if exists, is specific to FFmpegKitNext. It shows different releases from
the same FFmpeg release branch.
| Platforms | FFmpegKit Version | FFmpeg Version | Release Date |
|---|---|---|---|
| Android Flutter iOS / iPadOS Linux macOS React Native tvOS visionOS Web Windows |
9.0.0 | 9.0.1 | Aug 24, 2026 |
| Windows | 8.1.1 | 8.1.2 | Aug 21, 2026 |
| Android Flutter iOS / iPadOS Linux macOS React Native tvOS visionOS Web |
8.1.1 | 8.1.2 | Jul 28, 2026 |
| Android Flutter iOS / iPadOS Linux macOS React Native tvOS |
8.1.0 | 8.1.2 | Jul 02, 2026 |
| Android Flutter iOS / iPadOS Linux macOS React Native tvOS |
7.1.0 | 7.1.5 | Jul 01, 2026 |
| Android Flutter iOS / iPadOS Linux macOS React Native tvOS |
6.1.1 | 6.1.6 | Jun 27, 2026 |
| Android Flutter iOS / iPadOS Linux macOS React Native tvOS |
6.1.0 | 6.1.2 | Jun 26, 2026 |
A more detailed documentation is available under Wiki.
You can see how FFmpegKitNext is used inside an application by running test applications created under
FFmpegKitNext Test project.
All applications are identical and supports command execution, video encoding, accessing https urls, encoding audio, burning subtitles, video stabilisation, pipe operations, ffkit protocols and concurrent command execution.
FFmpegKitNext library alone is licensed under the LGPL v3.0.
FFmpegKitNext bundles (.aar archives, frameworks, xcframeworks), which include both FFmpegKitNext and FFmpeg
libraries, are also licensed under the LGPL v3.0. However, if the source code is built using the optional
--enable-gpl flag, then FFmpegKitNext bundles become subject to the GPL v3.0. Because, FFmpeg is licensed
under the GPL v3.0 in those bundles. And that makes the whole bundle effectively subject to the GPL v3.0.
FFmpegKitNext build scripts always configure FFmpeg with --enable-version3 option. And never enable non-free
libraries. Thus, FFmpeg libraries created by FFmpegKitNext are licensed under the LGPL v3.0 by default. Only when
--enable-gpl is provided they become subject to GPL v3.0.
Refer to Licenses and Notices to see the
licenses of all libraries. Trademarks lists the
trademarks used in the FFmpegKitNext documentation.
FFmpeg, kvazaar, x264 and x265 may implement codec technologies that are covered by patents in some
jurisdictions. Patent rules vary by country and this documentation is not legal advice. If you use or distribute
ffmpeg-kit-next in a country where software or codec patents are enforceable, you should consult qualified legal
counsel to determine whether your use case requires a patent license or royalty payments. For more context,
see the FFmpeg Patent Mini-FAQ.
openh264 has separate patent-licensing considerations. Cisco states that it covers MPEG LA AVC/H.264 patent-pool
royalties only for Cisco-distributed OpenH264 binary modules, subject to the applicable license terms and conditions.
If you build openh264 from source, include it in ffmpeg-kit-next and distribute the resulting library yourself,
you may be responsible for any applicable patent licenses or royalties. See the
OpenH264 FAQ for details.
1 FFmpeg is a trademark of Fabrice Bellard. FFmpegKitNext and FFmpegKit are independent projects and not affiliated with the FFmpeg trademark holder.