Releases: arthenica/ffmpeg-kit
FFmpegKit Flutter v5.1.0
- Based on
FFmpegKit
nativev5.1
releases - Includes
FFmpeg v5.1.2
- API Changes
- Improves parsing in
FFprobeKit.getMediaInformation()
method. The method is more tolerant to warnings now - Implements
AbstractSession.cancel()
method - Runs
iOS
andmacOS
callbacks on the main queue - Refactors
MediaInformation
classes- Renames all
getProperties
methods asgetProperty
- Renames
mediaProperties
insideMediaInformation
asformatProperties
, adds extra methods to get format properties
- Renames all
- Fixes a bug in which old sessions were not deleted in
setSessionHistorySize
method
- Improves parsing in
- Uses the new versions of
cpu_features
,dav1d
,expat
,fontconfig
,freetype
,fribidi
,harfbuzz
,libjpeg-turbo
,libaom
,libpng
,libvpx
,libwebp
,libxml2
,nettle
,opencore-amr
,openh264
,openssl
,speex
,srt
,x264
andzimg
Tested using v5.1.0 test applications
FFmpegKit Native 5.1.LTS
Long Term Support native packages for FFmpegKit v5.1
Supports the following device specifications
-
Android
- Android 4.1 (API level 16) or later
arm-v7a
,arm-v7a-neon
,arm64-v8a
,x86
andx86-64
architectures
-
iOS
- iOS SDK 10 or later
armv7
,arm64
,i386
andx86-64
architectures
-
macOS
- macOS SDK 10.12 or later
x86-64
architecture
-
tvOS
- tvOS SDK 10.0 or later
arm64
andx86-64
architectures
FFmpegKit Native 5.1
- Includes
FFmpeg v5.1.2
FFmpegKit
library changes- Implements
FFmpegKit
C++ API onLinux
platform which is not distributed in releases - Adds
create
methods to all session classes as the default method to create a new session - Improves parsing in
FFprobeKit.getMediaInformation()
method. The method is more tolerant to warnings now - Refactors
MediaInformation
classes- Renames all
getProperties
methods asgetProperty
- Renames
mediaProperties
insideMediaInformation
asformatProperties
, adds extra methods to get format properties
- Renames all
- Fixes a bug in which old sessions were not deleted in
setSessionHistorySize
method
- Implements
- Build script changes
- Adds builds scripts for the
Linux
platform (x86_64
architecture) - Enables
openssl
on 32-bitiOS
architectures - Upgrades
Android Gradle Plugin
to7.3.0
- Fixes building
gnutls
usingXcode v13.3
or later - Adds support for
Android NDK r24
andr25
- Bundles
c++_shared
whenchromaprint
is enabled - Targets
API Level 31
onAndroid
- Removes auto-generated files from
VCS
- Adds builds scripts for the
- Uses the new versions of
cpu_features
,dav1d
,expat
,fontconfig
,freetype
,fribidi
,harfbuzz
,libjpeg-turbo
,libaom
,libpng
,libvpx
,libwebp
,libxml2
,nettle
,opencore-amr
,openh264
,openssl
,speex
,srt
,x264
andzimg
- Fixes issues #3, #311, #323, #394, #443, #472, #530, #531, #546, #552 and #571
Supports the following device specifications
-
Android
- Android 7.0 (API level 24) or later
arm-v7a-neon
,arm64-v8a
,x86
andx86-64
architectures
-
iOS
- iOS SDK 12.1 or later
arm64
,arm64-mac-catalyst
,arm64-simulator
,x86-64
andx86-64-mac-catalyst
architectures
-
macOS
- macOS SDK 10.15 or later
arm64
andx86-64
architectures
-
tvOS
- tvOS SDK 11.0 or later
arm64
,arm64-simulator
andx86-64
architectures
Packages
-
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.
FFmpegKit React Native v4.5.2
- Based on
FFmpegKit
nativev4.5.1
releases - Includes
FFmpeg v4.5-dev-3393
- API Changes
- Implements
uninit()
method to clean up platform specific resources e.g. thread pools before application termination
- Implements
- Fixes issues #311 and #397
Tested using v4.5.2 test applications
FFmpegKit Native v4.5.1 LTS
Long Term Support native packages for FFmpegKit v4.5.1
Supports the following device specifications
-
Android
- Android 4.1 (API level 16) or later
arm-v7a
,arm-v7a-neon
,arm64-v8a
,x86
andx86-64
architectures
-
iOS
- iOS SDK 10 or later
armv7
,arm64
,i386
andx86-64
architectures
-
macOS
- macOS SDK 10.12 or later
x86-64
architecture
-
tvOS
- tvOS SDK 10.0 or later
arm64
andx86-64
architectures
FFmpegKit Native v4.5.1
- Includes
FFmpeg v4.5-dev-3393
- Switches to shared/dynamic libraries on Apple platforms (
ios
,macos
,tvos
)- Drops support for building static (.a) libraries
- Drops support for building universal (fat) binaries
- API Changes
- Replaces
ExecuteCallback
with session specificCompleteCallback
types (FFmpegSessionCompleteCallback
,FFprobeSessionCompleteCallback
,MediaInformationSessionCompleteCallback
) execute()
methods that acceptString[]
are renamed asexecuteWithArguments()
onAndroid
saf
protocol urls created byFFmpegKit.getSafParameter
methods are no longer single-use. They can be re-used multiple times- New
FFmpegKit.getSafParameter
method that allows providing a custom open mode - Implements chapters in
MediaInformation
class
- Replaces
- Adds support for
zimg
library (enableszscale
filter) - Enables 10bit pixel formats in
x265
- Uses the new versions of
fontconfig
,freetype
,fribidi
,kvazaar
,libvpx
andx264
- Fixes issues #28, #152, #167, #171, #174, #187, #192, #196, #197, #205, #241, #292 and #316
Supports the following device specifications
-
Android
- Android 7.0 (API level 24) or later
arm-v7a-neon
,arm64-v8a
,x86
andx86-64
architectures
-
iOS
- iOS SDK 12.1 or later
arm64
,arm64-mac-catalyst
,arm64-simulator
,x86-64
andx86-64-mac-catalyst
architectures
-
macOS
- macOS SDK 10.15 or later
arm64
andx86-64
architectures
-
tvOS
- tvOS SDK 11.0 or later
arm64
,arm64-simulator
andx86-64
architectures
Packages
-
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.
FFmpegKit Flutter v4.5.1
- Based on
FFmpegKit
nativev4.5.1
releases - Includes
FFmpeg v4.5-dev-3393
- Switches to shared/dynamic libraries on
iOS
- API Changes
- Implements
execute()
methods - Replaces
ExecuteCallback
with session specificCompleteCallback
types (FFmpegSessionCompleteCallback
,FFprobeSessionCompleteCallback
,MediaInformationSessionCompleteCallback
) saf
protocol urls created byFFmpegKit.getSafParameter
methods are no longer single-use. They can be re-used multiple times- New
FFmpegKit.getSafParameter
method that allows providing a custom open mode - Implements chapters in
MediaInformation
class
- Implements
- Adds support for
zimg
library (enableszscale
filter) - Enables 10bit pixel formats in
x265
- Uses the new versions of
fontconfig
,freetype
,fribidi
,kvazaar
,libvpx
andx264
- Fixes issues #209, #221 and #224
Tested using v4.5.1 test applications
FFmpegKit React Native v4.5.1
- Based on
FFmpegKit
nativev4.5.1
releases - Includes
FFmpeg v4.5-dev-3393
- Switches to shared/dynamic libraries on
iOS
- API Changes
- Implements
execute()
methods - Replaces
ExecuteCallback
with session specificCompleteCallback
types (FFmpegSessionCompleteCallback
,FFprobeSessionCompleteCallback
,MediaInformationSessionCompleteCallback
) saf
protocol urls created byFFmpegKit.getSafParameter
methods are no longer single-use. They can be re-used multiple times- New
FFmpegKit.getSafParameter
method that allows providing a custom open mode - Implements chapters in
MediaInformation
class
- Implements
- Adds support for
zimg
library (enableszscale
filter) - Enables 10bit pixel formats in
x265
- Uses the new versions of
fontconfig
,freetype
,fribidi
,kvazaar
,libvpx
andx264
- Fixes issues #199 and #205
Tested using v4.5.1 test applications
FFmpegKit Flutter v4.5.0
Flutter
platform release forFFmpeg v4.5
- Supports
Android
,macOS
andiOS
- Supersedes
flutter_ffmpeg
- Fixes issue #23
FFmpegKit React Native v4.5.0
React Native
platform release ofFFmpeg v4.5
- Supports
Android
andiOS
- Supersedes react-native-ffmpeg