-
Notifications
You must be signed in to change notification settings - Fork 44
Playback and Codecs
Moonfin uses each platform's native video pipeline rather than a single generic player, so playback is hardware accelerated on both Samsung and LG.
| Platform | Pipeline |
|---|---|
| Samsung (Tizen) | Samsung AVPlay |
| LG (webOS) | Starfish through a shared HTML5 video element |
Both handle hardware decoding for H.264, HEVC, HDR10, HLG, and Dolby Vision where the TV supports it.
Moonfin tries the cheapest path first and falls back only when it has to:
- Direct play the original file when the TV can decode it.
- Native transcode through the server when it cannot.
- hls.js as a final fallback.
Because Moonfin builds an accurate per-TV codec profile from what the device actually reports it can play, more content direct plays and less server CPU is spent on transcodes.
- Lossless passthrough of DTS, DTS-HD, and Dolby TrueHD bitstreamed to a capable receiver.
- Passthrough capability is rechecked live when you switch audio outputs, so plugging in or switching to a receiver mid-session is handled.
- Passthrough is experimental on webOS.
- PGS image subtitles rendered client-side.
- Styled ASS and SSA subtitles rendered through libass, including embedded font support.
- Subtitles can be searched for and downloaded from inside the app.
- Audio and subtitle tracks can be chosen before playback starts, and the subtitle selection is remembered across plays and episodes.
| Platform | Supported versions |
|---|---|
| Samsung (Tizen) | 2016 models (Tizen 2.4) through the latest |
| LG (webOS) | 2016 models (webOS 3.0) and newer |
Tizen 2.4 sets use the Legacy build, which has no Smart Hub Preview. See Installation and Sideloading for which file to pick.
Player controls are built for remote navigation rather than adapted from a pointer interface, and the TV's media keys (play, pause, fast-forward, rewind, stop) drive playback directly.