jellyfin / jellyfin-androidtv

Android TV Client for Jellyfin
https://jellyfin.org
GNU General Public License v2.0
2.92k stars 495 forks source link

0.17.5 playback issue with TRUEHD audio #4029

Open BoxenOfDonuts opened 2 months ago

BoxenOfDonuts commented 2 months ago

Describe the bug

  1. Go to a show or movie with truehd audio set as default
  2. Attempt to play the file
  3. Loads to black screen, never starts

If I set the bitrate low to force it to transcode, playback works with no issue.

If I remove the audio track with mkv tools, playback also works with no issues

Logs

[2024-09-28 13:54:37.398 +00:00] [INF] [142] Jellyfin.Api.Helpers.MediaInfoHelper: User policy for "joel". EnablePlaybackRemuxing: True EnableVideoPlaybackTranscoding: True EnableAudioPlaybackTranscoding: True
[2024-09-28 13:54:55.156 +00:00] [INF] [130] Emby.Server.Implementations.Session.SessionManager: Playback stopped reported by app "Android TV" "0.17.5" playing "The Crimson-Eyed Wizards". Stopped at "0" ms

FFmpeg logs

No logs, transcode never starts

Media info of the file

Audio
Title: Stereo - English - TRUEHD - Default
Language: eng
Codec: TRUEHD
AVC: No
Layout: stereo
Channels: 2 ch
Bitrate: 1044 kbps
Sample rate: 48000 Hz
Bit depth: 24 bit
Default: Yes
Forced: No
External: No

Video
Title: 1080p H264 SDR
Codec: H264
AVC: Yes
Profile: High
Level: 41
Resolution: 1920x1080
Aspect ratio: 16:9
Anamorphic: No
Interlaced: No
Framerate: 23.976025
Bitrate: 29320 kbps
Bit depth: 8 bit
Video range: SDR
Video range type: SDR
Pixel format: yuv420p
Ref frames: 1
NAL: 4

Application version

0.17.5

Device information

Fire TV Max gen 1

Android version

Fire OS 7.6.8.1

Jellyfin server version

10.9.10

rickysixx commented 1 month ago

I faced the same issue and it was because my device does not support TrueHD. It seems your Fire TV does not support it either (see its specs).

The problem is in ExoPlayer, which gets stuck in this state instead of throwing an error.

You can try different workarounds to play the media: