-
Notifications
You must be signed in to change notification settings - Fork 57
Playback and Codecs
Moonfin selects the best playback backend for each platform. Mobile, desktop, and web use media_kit (libmpv), Android TV uses a native Media3 and ExoPlayer backend with hardware codec probing and audio passthrough, Apple TV uses a native MPVKit backend, and Samsung TV (Tizen) uses the native AVPlay player.
| Platform | Backend | Notes |
|---|---|---|
| Android, iOS, macOS, Windows, Linux, Web | media_kit (libmpv) | Broad codec coverage without relying on platform-specific frameworks |
| Android TV / Google TV | Native Media3 and ExoPlayer | Hardware codec probing, audio passthrough, HDR detection |
| Apple TV (tvOS) | Native MPVKit | Dolby Vision Profile 7 decode |
| Tizen (Samsung TV) | Native AVPlay (video_player_tizen) |
See the limitations in Installation |
The libmpv path gives broad codec coverage without relying on platform-specific frameworks:
| Category | Supported Formats |
|---|---|
| Video | H.264, HEVC (H.265), VP8, VP9, AV1, MPEG-2, MPEG-4, VC-1 |
| Audio | AAC, MP3, FLAC, Opus, Vorbis, AC3 (Dolby Digital), EAC3 (Dolby Digital Plus), DTS, TrueHD, PCM (16-/24-bit), ALAC |
| Containers | MP4, MKV, WebM, AVI, MOV, TS / M2TS, WMV / ASF |
| Subtitles | SRT, ASS / SSA, VTT / WebVTT, TTML, SUB; bitmap (PGS, DVB, VobSub) on desktop |
| HDR | Dolby Vision, HDR10+, HDR10, HLG - automatic detection and signaling |
| HW Accel | VA-API, QSV, NVENC, VideoToolbox, V4L2, RKMPP |
On the TV backends (Android TV via Media3 and Apple TV via MPVKit), Moonfin also supports bitstream audio passthrough for AC3, EAC3, DTS, DTS-HD, TrueHD, and Atmos to AV receivers, with per-format toggles, alongside Dolby Vision Profile 7 direct play.
On desktop and Android you can supply your own mpv.conf for custom shaders, scaling algorithms, and tone mapping. See Custom mpv Configuration.