Skip to content
 
 

Repository files navigation

FFmpegKitNext

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.

0. Features How is FFmpegKitNext different from FFmpegKit?

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 Nix, then integrate the generated artifacts into your application.

1. Features

  • Nix-based scripts to build FFmpeg native libraries
  • FFmpegKitNext wrapper library to run FFmpeg/FFprobe commands in applications
  • Supports native platforms: Android, iOS, Linux, macOS and tvOS
  • Supports hybrid platforms: Flutter, React Native
  • Based on FFmpeg v6.1.x or later with optional system and external libraries
  • Licensed under LGPL 3.0 by default, GPL v3.0 if GPL licensed libraries are enabled

2. Android

See Android to learn more about FFmpegKitNext for Android.

3. iOS, macOS, tvOS

See Apple to use FFmpegKitNext on Apple platforms (iOS, macOS, tvOS).

4. Flutter

See Flutter to learn more about FFmpegKitNext for Flutter.

5. Linux

See Linux to learn more about FFmpegKitNext for Linux.

6. React Native

See React Native to learn more about FFmpegKitNext for React Native.

7. Build Scripts

FFmpegKitNext build scripts depend on Nix. Nix provides the build environment, inputs and toolchains required to produce the same binaries across machines.

Use nix-android.sh, nix-ios.sh, nix-linux.sh, nix-macos.sh and nix-tvos.sh to build FFmpegKitNext locally for each native platform.

All scripts support additional options to enable optional libraries and disable platform architectures. See Building wiki page for the details.

8. FFmpegKitNext Library

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, macOS, tvOS) have an Objective-C API, Flutter library comes with a Dart API, Linux library has a C++ API and React Native library provides a JavaScript API with Typescript definitions, which are identical in terms of features and capabilities.

9. External Libraries

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
android system libraries zlib
MediaCodec
ios system libraries bzip2
AudioToolbox
AVFoundation
iconv
VideoToolbox
zlib
macos system libraries bzip2
AudioToolbox
AVFoundation
Core Image
iconv
OpenCL
OpenGL
VideoToolbox
zlib
tvos system libraries bzip2
AudioToolbox
iconv
VideoToolbox
zlib
  • AVFoundation is not available on tvOS

10. Versions

FFmpegKitNext 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
Linux
macOS
React Native
tvOS
6.1.0 6.1.2 Jun 26, 2026
Android
Flutter
iOS
Linux
macOS
React Native
tvOS
6.1.1 6.1.6 Jun 27, 2026
Android
Flutter
iOS
Linux
macOS
React Native
tvOS
7.1.0 7.1.5 Jul 01, 2026
Android
Flutter
iOS
Linux
macOS
React Native
tvOS
8.1.0 8.1.2 Jul 02, 2026

11. Documentation

A more detailed documentation is available under Wiki.

12. Test Applications

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.

13. License

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 to see the licenses of all libraries. Trademark lists the trademarks used in the FFmpegKitNext documentation.

14. Patents

It is not clearly explained in their documentation, but it is believed that FFmpeg, kvazaar, x264 and x265 include algorithms which are subject to software patents. If you live in a country where software algorithms are patentable then you'll probably need to pay royalty fees to patent holders. We are not lawyers though, so we recommend that you seek legal advice first. See FFmpeg Patent Mini-FAQ.

openh264 clearly states that it uses patented algorithms. Therefore, if you build ffmpeg-kit-next with openh264 and distribute that library, then you are subject to pay MPEG LA licensing fees. Refer to OpenH264 FAQ page for the details.

15. Trademarks

1 FFmpeg is a trademark of Fabrice Bellard. FFmpegKitNext and FFmpegKit are independent projects and not affiliated with the FFmpeg trademark holder.

16. See Also

About

LGPL-3.0 ffmpeg/ffprobe CLI builds for MnemoVi — fork of arthenica/ffmpeg-kit-next, patched to emit CLI binaries (no --enable-gpl).

Resources

Code of conduct

Contributing

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages