Skip to main content

renderer_codecs

Function renderer_codecs 

Source
pub fn renderer_codecs() -> (String, String)
Expand description

What the renderer that will actually decode video on this platform can play.

Returns (video_codecs, audio_codecs) as Jellyfin-style comma lists.

This exists because the answer was previously derived in four places and hardcoded in a fifth, each of them assuming the webview was decoding: the device profile, the transcoding targets, the direct-play audio narrowing, the client-side audio override, and get_video_stream_url’s VideoCodec. On Android the decoder is ExoPlayer, so every one of those was wrong there — the observed cost being an hevc source re-encoded to h264 because its audio was eac3, and dts forced to transcode though the device decodes it.

One source, so the copies cannot disagree again.

TRACES: UR-004, UR-080 | DR-234