FFmpeg Kit for applications. Supports Android, Flutter, iOS, Linux, macOS, React Native and tvOS. Supersedes MobileFFmpeg, flutter_ffmpeg and react-native-ffmpeg.
LGPL-3.0 License
Bot releases are visible (Hide)
v6.0
Tested using v6.0.2 test applications
Published by suencooper about 1 year ago
v6.0
Tested using v6.0.3 test applications
Published by suencooper about 1 year ago
FFmpeg v6.0
FFmpegKit
library changes
Statistics.getTime()
method to return milliseconds as doublefd
protocol on Android
. ffmpeg 6.0
has a new built-in fd
protocol that can be used insteadFFmpegKit
binaries built without bitcode on iOS
and tvOS
platformsAPI Level 33
on Android
8.1.0
cpu_features
, dav1d
, expat
, fontconfig
, freetype
, fribidi
, giflib
, gmp
, gnutls
, harfbuzz
, libjpeg-turbo
, kvazaar
, leptonica
, libaom
, libass
, libiconv
, libilbc
, libpng
, libsndfile
, libvidstab
, libvpx
, libwebp
, libxml2
, openssl
, opus
, srt
, tesseract
, x264
and zimg
Supports the following device specifications
Android
arm-v7a-neon
, arm64-v8a
, x86
and x86-64
architecturesiOS
arm64
, arm64-mac-catalyst
, arm64-simulator
, x86-64
and x86-64-mac-catalyst
architecturesmacOS
arm64
and x86-64
architecturestvOS
arm64
, arm64-simulator
and x86-64
architecturesPackages
min: Includes only ffmpeg
min-gpl: Includes ffmpeg with all GPL licensed external libraries (libvid.stab, x264, x265, xvidcore) enabled except rubberband
https: Includes ffmpeg with gmp and gnutls enabled
https-gpl: Includes ffmpeg with gmp, gnutls and all GPL licensed external libraries (libvid.stab, x264, x265, xvidcore) enabled except rubberband
audio: Includes ffmpeg with audio libraries (lame, libilbc, libvorbis, opencore-amr, opus, shine, soxr, speex, twolame, vo-amrwbenc) enabled
video: Includes ffmpeg with video libraries without GPL license (dav1d, fontconfig, freetype, fribidi, kvazaar, libass, libiconv, libtheora, libvpx, libwebp, snappy, zimg) enabled
full: Includes ffmpeg with all external libraries without GPL license (excluding chromaprint, libaom, openh264, openssl, sdl, srt and tesseract) enabled
full-gpl: Includes ffmpeg with all external libraries, with or without GPL license, enabled excluding chromaprint, libaom, openh264, openssl, sdl, srt, tesseract and rubberband
See Versions for the external library versions included.
Published by suencooper about 1 year ago
Long Term Support native packages for FFmpegKit v6.0
Supports the following device specifications
Android
arm-v7a
, arm-v7a-neon
, arm64-v8a
, x86
and x86-64
architecturesiOS
armv7
, arm64
, i386
and x86-64
architecturesmacOS
x86-64
architecturetvOS
arm64
and x86-64
architecturesPublished by suencooper about 1 year ago
Tested using v6.0.1 test applications
Published by suencooper about 1 year ago
v6.0
podspec
and gradle
filesTested using v6.0.2 test applications
Published by suencooper about 1 year ago
Tested using v6.0.1 test applications
Published by suencooper about 1 year ago
FFmpegKit
native v6.0
releasesFFmpeg v6.0
Statistics.getTime()
method to return milliseconds as doublefd
protocol on Android
. ffmpeg 6.0
has a new built-in fd
protocol that can be used insteadFFmpegKit
binaries built without bitcode on iOS
and tvOS
platformscpu_features
, dav1d
, expat
, fontconfig
, freetype
, fribidi
, giflib
, gmp
, gnutls
, harfbuzz
, libjpeg-turbo
, kvazaar
, leptonica
, libaom
, libass
, libiconv
, libilbc
, libpng
, libsndfile
, libvidstab
, libvpx
, libwebp
, libxml2
, openssl
, opus
, srt
, tesseract
, x264
and zimg
Tested using v6.0.0 test applications
Published by suencooper about 1 year ago
FFmpegKit
native v6.0
releasesFFmpeg v6.0
Statistics.getTime()
method to return millisecondsfd
protocol on Android
. ffmpeg 6.0
has a new built-in fd
protocol that can be used insteadFFmpegKit
binaries built without bitcode on iOS
and tvOS
platformscpu_features
, dav1d
, expat
, fontconfig
, freetype
, fribidi
, giflib
, gmp
, gnutls
, harfbuzz
, libjpeg-turbo
, kvazaar
, leptonica
, libaom
, libass
, libiconv
, libilbc
, libpng
, libsndfile
, libvidstab
, libvpx
, libwebp
, libxml2
, openssl
, opus
, srt
, tesseract
, x264
and zimg
Tested using v6.0.0 test applications
Published by tanersener about 2 years ago
FFmpegKit
native v5.1
releasesFFmpeg v5.1.2
FFprobeKit.getMediaInformation()
method. The method is more tolerant to warnings nowMediaInformation
classes
getProperties
methods as getProperty
mediaProperties
inside MediaInformation
as formatProperties
, adds extra methods to get format propertiessetSessionHistorySize
methodcpu_features
, dav1d
, expat
, fontconfig
, freetype
, fribidi
, harfbuzz
, libjpeg-turbo
, libaom
, libpng
, libvpx
, libwebp
, libxml2
, nettle
, opencore-amr
, openh264
, openssl
, speex
, srt
, x264
and zimg
Tested using v5.1.0 test applications
Published by tanersener about 2 years ago
FFmpegKit
native v5.1
releasesFFmpeg v5.1.2
FFprobeKit.getMediaInformation()
method. The method is more tolerant to warnings nowAbstractSession.cancel()
methodiOS
and macOS
callbacks on the main queueMediaInformation
classes
getProperties
methods as getProperty
mediaProperties
inside MediaInformation
as formatProperties
, adds extra methods to get format propertiessetSessionHistorySize
methodcpu_features
, dav1d
, expat
, fontconfig
, freetype
, fribidi
, harfbuzz
, libjpeg-turbo
, libaom
, libpng
, libvpx
, libwebp
, libxml2
, nettle
, opencore-amr
, openh264
, openssl
, speex
, srt
, x264
and zimg
Tested using v5.1.0 test applications
Published by tanersener about 2 years ago
FFmpeg v5.1.2
FFmpegKit
library changes
FFmpegKit
C++ API on Linux
platform which is not distributed in releasescreate
methods to all session classes as the default method to create a new sessionFFprobeKit.getMediaInformation()
method. The method is more tolerant to warnings nowMediaInformation
classes
getProperties
methods as getProperty
mediaProperties
inside MediaInformation
as formatProperties
, adds extra methods to get format propertiessetSessionHistorySize
methodLinux
platform (x86_64
architecture)openssl
on 32-bit iOS
architecturesAndroid Gradle Plugin
to 7.3.0
gnutls
using Xcode v13.3
or laterAndroid NDK r24
and r25
c++_shared
when chromaprint
is enabledAPI Level 31
on Android
VCS
cpu_features
, dav1d
, expat
, fontconfig
, freetype
, fribidi
, harfbuzz
, libjpeg-turbo
, libaom
, libpng
, libvpx
, libwebp
, libxml2
, nettle
, opencore-amr
, openh264
, openssl
, speex
, srt
, x264
and zimg
Supports the following device specifications
Android
arm-v7a-neon
, arm64-v8a
, x86
and x86-64
architecturesiOS
arm64
, arm64-mac-catalyst
, arm64-simulator
, x86-64
and x86-64-mac-catalyst
architecturesmacOS
arm64
and x86-64
architecturestvOS
arm64
, arm64-simulator
and x86-64
architecturesPackages
min: Includes only ffmpeg
min-gpl: Includes ffmpeg with all GPL licensed external libraries (libvid.stab, x264, x265, xvidcore) enabled except rubberband
https: Includes ffmpeg with gmp and gnutls enabled
https-gpl: Includes ffmpeg with gmp, gnutls and all GPL licensed external libraries (libvid.stab, x264, x265, xvidcore) enabled except rubberband
audio: Includes ffmpeg with audio libraries (lame, libilbc, libvorbis, opencore-amr, opus, shine, soxr, speex, twolame, vo-amrwbenc) enabled
video: Includes ffmpeg with video libraries without GPL license (dav1d, fontconfig, freetype, fribidi, kvazaar, libass, libiconv, libtheora, libvpx, libwebp, snappy, zimg) enabled
full: Includes ffmpeg with all external libraries without GPL license (excluding chromaprint, libaom, openh264, openssl, sdl, srt and tesseract) enabled
full-gpl: Includes ffmpeg with all external libraries, with or without GPL license, enabled excluding chromaprint, libaom, openh264, openssl, sdl, srt, tesseract and rubberband
See Versions for the external library versions included.
Published by tanersener about 2 years ago
Long Term Support native packages for FFmpegKit v5.1
Supports the following device specifications
Android
arm-v7a
, arm-v7a-neon
, arm64-v8a
, x86
and x86-64
architecturesiOS
armv7
, arm64
, i386
and x86-64
architecturesmacOS
x86-64
architecturetvOS
arm64
and x86-64
architecturesPublished by tanersener over 2 years ago
FFmpegKit
native v4.5.1
releasesFFmpeg v4.5-dev-3393
iOS
execute()
methodsExecuteCallback
with session specific CompleteCallback
types (FFmpegSessionCompleteCallback
, FFprobeSessionCompleteCallback
, MediaInformationSessionCompleteCallback
)saf
protocol urls created by FFmpegKit.getSafParameter
methods are no longer single-use. They can be re-used multiple timesFFmpegKit.getSafParameter
method that allows providing a custom open modeMediaInformation
classzimg
library (enables zscale
filter)x265
fontconfig
, freetype
, fribidi
, kvazaar
, libvpx
and x264
Tested using v4.5.1 test applications
Published by tanersener over 2 years ago
React Native
platform release of FFmpeg v4.5
Android
and iOS
Published by tanersener over 2 years ago
FFmpegKit
native v4.5.1
releasesFFmpeg v4.5-dev-3393
uninit()
method to clean up platform specific resources e.g. thread pools before application terminationTested using v4.5.2 test applications
Published by tanersener almost 3 years ago
FFmpeg v4.5-dev-3393
ios
, macos
, tvos
)
ExecuteCallback
with session specific CompleteCallback
types (FFmpegSessionCompleteCallback
, FFprobeSessionCompleteCallback
, MediaInformationSessionCompleteCallback
)execute()
methods that accept String[]
are renamed as executeWithArguments()
on Android
saf
protocol urls created by FFmpegKit.getSafParameter
methods are no longer single-use. They can be re-used multiple timesFFmpegKit.getSafParameter
method that allows providing a custom open modeMediaInformation
classzimg
library (enables zscale
filter)x265
fontconfig
, freetype
, fribidi
, kvazaar
, libvpx
and x264
Supports the following device specifications
Android
arm-v7a-neon
, arm64-v8a
, x86
and x86-64
architecturesiOS
arm64
, arm64-mac-catalyst
, arm64-simulator
, x86-64
and x86-64-mac-catalyst
architecturesmacOS
arm64
and x86-64
architecturestvOS
arm64
, arm64-simulator
and x86-64
architecturesPackages
min: Includes only ffmpeg
min-gpl: Includes ffmpeg with all GPL licensed external libraries (libvid.stab, x264, x265, xvidcore) enabled except rubberband
https: Includes ffmpeg with gmp and gnutls enabled
https-gpl: Includes ffmpeg with gmp, gnutls and all GPL licensed external libraries (libvid.stab, x264, x265, xvidcore) enabled except rubberband
audio: Includes ffmpeg with audio libraries (lame, libilbc, libvorbis, opencore-amr, opus, shine, soxr, speex, twolame, vo-amrwbenc) enabled
video: Includes ffmpeg with video libraries without GPL license (dav1d, fontconfig, freetype, fribidi, kvazaar, libass, libiconv, libtheora, libvpx, libwebp, snappy, zimg) enabled
full: Includes ffmpeg with all external libraries without GPL license (excluding chromaprint, libaom, openh264, openssl, sdl, srt and tesseract) enabled
full-gpl: Includes ffmpeg with all external libraries, with or without GPL license, enabled excluding chromaprint, libaom, openh264, openssl, sdl, srt, tesseract and rubberband
See Versions for the external library versions included.
Published by tanersener almost 3 years ago
Long Term Support native packages for FFmpegKit v4.5.1
Supports the following device specifications
Android
arm-v7a
, arm-v7a-neon
, arm64-v8a
, x86
and x86-64
architecturesiOS
armv7
, arm64
, i386
and x86-64
architecturesmacOS
x86-64
architecturetvOS
arm64
and x86-64
architecturesPublished by tanersener almost 3 years ago
FFmpegKit
native v4.5.1
releasesFFmpeg v4.5-dev-3393
iOS
execute()
methodsExecuteCallback
with session specific CompleteCallback
types (FFmpegSessionCompleteCallback
, FFprobeSessionCompleteCallback
, MediaInformationSessionCompleteCallback
)saf
protocol urls created by FFmpegKit.getSafParameter
methods are no longer single-use. They can be re-used multiple timesFFmpegKit.getSafParameter
method that allows providing a custom open modeMediaInformation
classzimg
library (enables zscale
filter)x265
fontconfig
, freetype
, fribidi
, kvazaar
, libvpx
and x264
Tested using v4.5.1 test applications
Published by tanersener about 3 years ago
Flutter
platform release for FFmpeg v4.5
Android
, macOS
and iOS
flutter_ffmpeg