# githubhaohao/LearnFFmpeg

Android FFmpeg 音视频开发教程

Repository: https://github.com/githubhaohao/LearnFFmpeg
Canonical: https://ross.abutalabs.com/products/learnffmpeg
Language: C++
License Family: other
Topics: ffmpeg, ffmpeg-opengles, android-ffmpeg, learn-ffmpeg, ffplayer, ffmpeg-recorder, ffmpeg-render, ffmpeg-player
Last push: 2025-10-22T15:17:58+00:00

## Health v2 (maintenance only)
Score: 54/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 48, release rhythm 35, longevity 100
- inputs: {"age_days": 2262, "days_push": 315, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_releases, no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1617, forks 356 (observed 2026-08-28T04:05:11.956633+00:00)

## What it is
A free open-source tutorial series and companion codebase for learning FFmpeg-based audio and video development on Android. It covers building players, recorders, filters, audio visualization, and hardware decoding through 15 serialized blog articles with working C++/NDK sample code.

## Use cases
- learn how to integrate and compile FFmpeg for Android
- build a video player with FFmpeg and ANativeWindow
- implement audio playback with OpenSLES
- add video filters with OpenGL ES rendering
- sync audio and video in a custom media player
- record video with filters and encode with x264 and fdk-aac
- use MediaCodec for hardware video decoding
- build a 3D panoramic VR video player

## When to choose
- you are an Android developer learning multimedia development with FFmpeg and NDK
- you want step-by-step tutorials with runnable sample code for players and recorders
- you need examples combining FFmpeg with OpenGL ES, OpenSLES, or MediaCodec

## When to avoid
- you need a production-ready media player library rather than educational code
- you target iOS, desktop, or server platforms instead of Android
- you require a formally licensed dependency - the repository has no explicit license file

## Facets
- artifact type: learning-resource
- maturity: active
- function: video-processing, audio-processing, graphics, developer-tools
- domain: tutorials, mobile-development, media, android-tools
- platform: cpp
- tags: ffmpeg, android-ndk, opengles, opensles, mediacodec, video-player, audio-visualization, video-recording, tutorial-series, c-plus-plus, audio, video, android, mobile

## Member repositories
- githubhaohao/LearnFFmpeg (main) score 54

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:05:11.956633+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T03:49:54.363834+00:00, confidence not recorded.
  - readme: https://github.com/githubhaohao/LearnFFmpeg (fetched 2026-08-28T04:05:11.956633+00:00, sha 04520819a372)
- Data as of 2026-08-30T08:39:29.467469+00:00.
