explaingit

arthenica/ffmpeg-kit

5,825CAudience · developerComplexity · 3/5Setup · moderate

TLDR

A now-retired library that made it easy to run FFmpeg video and audio processing commands inside Android, iOS, Flutter, and React Native apps, community-maintained forks are the recommended path forward today.

Mindmap

mindmap
  root((FFmpegKit))
    Status
      Officially retired
      Community forks exist
      Source still available
    Platforms
      Android Java
      iOS Objective-C
      Flutter Dart
      React Native JS
    Operations
      Convert video formats
      Trim and merge clips
      Add subtitles
    Packages
      Minimal build
      Full codec build
      8 prebuilt variants
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Convert video formats inside a mobile app without sending files to a server.

USE CASE 2

Trim, merge, or add subtitles to videos directly on an iOS or Android device.

USE CASE 3

Use a community fork of FFmpegKit via Maven Central, pub.dev, or npm for an actively maintained replacement.

Tech stack

CJavaObjective-CDartC++JavaScriptFFmpeg

Getting it running

Difficulty · moderate Time to first run · 30min

Original package repositories are offline, install via community forks on Maven Central, pub.dev, or npm instead.

The project is officially retired, source code remains available but original binary packages have been removed.

In plain English

FFmpegKit was a library that made it easy to use FFmpeg inside mobile and desktop applications. FFmpeg is a widely used open-source tool for processing video and audio: converting formats, trimming clips, adding subtitles, extracting audio, and many other media operations. Getting FFmpeg to work inside a mobile app normally requires compiling native code for each platform, which is complex. FFmpegKit handled that compilation and provided a clean API so developers could run FFmpeg commands from their app code. It supported Android, iOS, macOS, tvOS, Linux, Flutter, and React Native. Each platform got its own language API: Java for Android, Objective-C for Apple platforms, Dart for Flutter, C++ for Linux, and JavaScript for React Native. The library came in eight prebuilt package variants, ranging from a minimal build to a full build that included many optional codec libraries for things like H.264, H.265, VP8/VP9, Opus, and subtitle rendering. Important note: the README states that FFmpegKit has been officially retired and will receive no further releases. The hosted binary packages were scheduled for removal in early 2025. The README points users toward community-maintained forks available through the same package managers (Maven Central for Android, pub.dev for Flutter, npm for React Native). For anyone encountering this repository while looking for a working solution today, the project itself no longer functions from its original distribution channels. The source code remains available, and the community forks listed in the README are the recommended path forward. This project superseded three earlier libraries (MobileFFmpeg, flutter_ffmpeg, and react-native-ffmpeg) before being retired.

Copy-paste prompts

Prompt 1
I'm migrating from ffmpeg-kit to the community fork in my Flutter app. Show me how to convert a video file from MP4 to MP3 audio using the community ffmpeg_kit_flutter package.
Prompt 2
I need to trim a video to the first 30 seconds and add a watermark using FFmpeg in an Android app. Write the Java code using the community ffmpeg-kit-android fork.
Prompt 3
What is the community-maintained replacement for ffmpeg-kit in React Native, and how do I install it and run a basic FFmpeg command?
Prompt 4
How do I run an FFmpeg command asynchronously in a Flutter app and display a progress percentage to the user while it processes?
Prompt 5
I'm building an iOS app that needs to merge multiple video clips into one. Show me how to run the FFmpeg concat command using the community Objective-C fork.
Open on GitHub → Explain another repo

← arthenica on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.