explaingit

ffmpegkit-maintained/ffmpeg

Analysis updated 2026-05-18

6CAudience · developerComplexity · 2/5LicenseSetup · easy

TLDR

A community-maintained Android fork of the archived FFmpegKit library, updated for Android SDK 35, 16KB page support, and LTS releases, with optional on-device WhisperKit speech recognition.

Mindmap

mindmap
  root((ffmpegkit-maintained))
    Why It Exists
      Original archived 2025
      SDK 35 compatibility
      16KB page size support
    Three LTS Lines
      6.0 LTS stable
      7.1 LTS newer codecs
      8.1 LTS latest FFmpeg
    Tiers
      Free Maven Central
      Basic paid Gumroad
      Full with WhisperKit
    Install
      Gradle one line
      JitPack alternative
      Direct AAR download
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

What do people build with it?

USE CASE 1

Add the free Maven Central dependency to an Android app to run FFmpeg commands for audio conversion, video trimming, or format transcoding.

USE CASE 2

Migrate an existing app from the archived arthenica:ffmpeg-kit to this maintained fork using the steps in docs/MIGRATION.md.

USE CASE 3

Use the 8.1 Full paid tier to add on-device subtitle generation and speech recognition via WhisperKit without sending audio to a server.

USE CASE 4

Update an Android app to target SDK 35 and pass Google Play's 16KB page size requirement by switching to this fork.

What is it built with?

CJavaAndroid NDKFFmpegGradleMaven Central

How does it compare?

ffmpegkit-maintained/ffmpegblackcoffee2/promeunsignedchad/bcm4360-wpa3
Stars655
LanguageCCC
Setup difficultyeasymoderatehard
Complexity2/54/55/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 5min

Free tier is a single Gradle line, paid tiers require downloading an AAR from Gumroad and placing it in app/libs/.

Free to use in any project including commercial apps, but modifications to the library itself must be shared under the same license.

In plain English

This repository is a community-maintained fork of FFmpegKit, an Android library that lets app developers run FFmpeg (a widely used audio and video processing tool) from within their apps. The original FFmpegKit was archived by its author in April 2025, leaving many Android apps without a maintained version of the library. This fork picks up where it left off, focusing exclusively on keeping it working on current and future Android versions. The main updates are Android SDK 35 (Android 15) compatibility, support for 16 KB memory page sizes (a requirement Google Play mandated for new and updated apps starting November 2025), and regular security and codec updates on a stable, long-term-support release schedule. The fork does not support iOS, macOS, tvOS, Linux, Flutter, or React Native: it is Android only, intentionally. Three separate release lines are available, corresponding to FFmpeg versions 6.0, 7.1, and 8.1. The free tier for each is published to Maven Central and can be added to any Android project with a single Gradle dependency line. Paid tiers on Gumroad add features like H.264 and H.265 encoding, hardware MediaCodec access, and TLS support. The most capable paid tier includes WhisperKit, which adds on-device speech recognition and automatic subtitle generation without sending audio to any server. The API is unchanged from the original FFmpegKit, so existing apps can migrate by updating the package name and Gradle coordinates. A migration guide in the documentation folder covers the exact steps. This is for Android developers whose apps currently depend on the original FFmpegKit and need a maintained version, or who want to add audio and video processing to a new Android app.

Copy-paste prompts

Prompt 1
Walk me through migrating an Android app from com.arthenica:ffmpeg-kit-full to the ffmpegkit-maintained fork. What Gradle and package name changes do I need?
Prompt 2
I want to add video conversion to my Android app using ffmpegkit-maintained. Show me the Gradle dependency for the 7.1 LTS free tier and a basic FFmpegKit.executeAsync example.
Prompt 3
Explain the 16KB memory page size requirement for Google Play and how ffmpegkit-maintained's builds satisfy it.
Prompt 4
I want to add on-device subtitle generation to my Android video app using ffmpegkit-maintained 8.1 Full with WhisperKit. Walk me through setup from the docs.
Prompt 5
Compare the 6.0, 7.1, and 8.1 LTS lines in ffmpegkit-maintained. Which should I pick for a new Android app targeting SDK 35 and why?

Frequently asked questions

What is ffmpeg?

A community-maintained Android fork of the archived FFmpegKit library, updated for Android SDK 35, 16KB page support, and LTS releases, with optional on-device WhisperKit speech recognition.

What language is ffmpeg written in?

Mainly C. The stack also includes C, Java, Android NDK.

What license does ffmpeg use?

Free to use in any project including commercial apps, but modifications to the library itself must be shared under the same license.

How hard is ffmpeg to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is ffmpeg for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Scan in gitsafehub Deploy in gitdeployhub ffmpegkit-maintained on gitmyhub

Verify against the repo before relying on details.