Unable to play media with EAC3 codec - jellybeandog - 2025-01-25
I'd be grateful if anyone has any ideas on how to fix this issue, or understand if this is a bug with Jellyfin or an issue with my setup. My setup is:
- Jellyfin 10.10.3
- 4K Firestick connected to a Denon x1400H
- TCL QM8B connected to the Denon via eArc
I'm unable to watch any media with a codec of EAC3/DDP7.1 on my TV (via Firestick) on the default Jellyfin player. When I try and play it, it shows a black screen, sometimes with very distorted slowed down audio, but the player stays on 0 seconds and doesn't progress.
Changing the external player to VLC fixes the issue, but this introduces a slight audio delay.
I can also watch the film using the Android TV's Jellyfin app and default TV speakers (not on the Firestick).
I've changed the logger to show debug info, and included an example log when I play one of these films. To me it doesn't look like there's any obvious error message but I'm not 100% sure. Thanks in advance for any help.
https://pastebin.com/KAPugLdF
RE: Unable to play media with EAC3 codec - theguymadmax - 2025-01-25
So that's two issues you have there:
The issue where the screen is black and only audio is playing is a known bug with ExoPlayer on devices using the MT8696 MediaTek chipset, which is found in Fire TV 4K Sticks and the latest Google streamer. It occurs when playing media that includes both Dolby Vision and HDR10+. Here are several threads related to this.
AndroidTV
https://github.com/jellyfin/jellyfin-androidtv/issues/2630 (old issue)
https://github.com/jellyfin/jellyfin-androidtv/issues/4021 (new issue)
Exoplayer/AndroidX Media
https://github.com/google/exoplayer/issues/11096 (old issue)
https://github.com/androidx/media/issues/1895 (new issue)
Workarounds:
- Remove DV Metadata: Follow the steps in this forum thread to strip out the Dolby Vision metadata.
Code: /usr/lib/jellyfin-ffmpeg/ffmpeg -y -hide_banner -stats -fflags +genpts+igndts -loglevel error -i "/path/to/dvhdr10+_video.mkv" -map 0 -bsf:v hevc_metadata=remove_dovi=1 -codec copy -max_muxing_queue_size 2048 -max_interleave_delta 0 -avoid_negative_ts disabled hdr10_video.mkv
- Remove HDR10+ Metadata:
Code: /usr/lib/jellyfin-ffmpeg/ffmpeg -y -hide_banner -stats -fflags +genpts+igndts -loglevel error -i "/path/to/dvhdr10+_video.mkv" -map 0 -bsf:v hevc_metadata=remove_hdr10plus=1 -codec copy -max_muxing_queue_size 2048 -max_interleave_delta 0 -avoid_negative_ts disabled dv_video.mkv
- Force Transcoding on ATV: Reduce the bitrate or set audio to stereo to trigger transcoding on the client.
- Use Kodi as an external player for the ATV client: Kodi allows you to choose the format compatible with your TV. You can disable Dolby Vision or HDR10+ as needed.
- Use Kodi with Jellyfin Plugin: Kodi allows you to choose the format compatible with your TV. You can disable Dolby Vision or HDR10+ as needed.
The second issue with the distorted audio seems like a different problem. If you have any FFmpeg logs related to it, feel free to post them. However, the main issue is the one I mentioned earlier.
RE: Unable to play media with EAC3 codec - jellybeandog - 2025-01-26
Thank you for the help, that's interesting. Glad there are already issues raised on GitHub.
For the workarounds, would I need to apply steps 1 and 2 together? I assumed just one of them would be ok given the issue is when both attributes occur - I tried step 1 (but had to remove 'hevc_metadata=remove_dovi=1' as my files are h264) but still get the same issue. But regardless it took about 20 minutes to convert a single file so it's not the easiest fix for now - I'll try Kodi next.
I was thinking about getting an Nvidia Shield at some point in the future, presumably it wouldn't suffer from the same issue given it's just the 4K Firesticks / Google streamer?
Thanks again!
RE: Unable to play media with EAC3 codec - theguymadmax - 2025-01-26
Post the mediainfo of some files that you are having issues with using the Media Info tool. These files will be encoded with HEVC (not H.264). As seen in the example below, the HDR section has both DV and HDR10+.
Code: Video
ID : 1
Format : HEVC
Format/Info : High Efficiency Video Coding
Format profile : Main 10@L5@High
HDR format : Dolby Vision, Version 1.0, Profile 8.1, dvhe.08.06, BL+RPU, no metadata compression, HDR10 compatible / SMPTE ST 2094 App 4, Version HDR10+ Profile B, HDR10+ Profile B compatible
Codec ID : V_MPEGH/ISO/HEVC
Duration : 2 h 6 min
Bit rate : 24.2 Mb/s
Width : 3 836 pixels
Height : 1 608 pixels
Display aspect ratio : 2.39:1
Frame rate mode : Constant
Frame rate : 23.976 FPS
Color space : YUV
Chroma subsampling : 4:2:0 (Type 2)
Bit depth : 10 bits
Bits/(Pixel*Frame) : 0.164
Stream size : 21.5 GiB (97%)
Default : Yes
Forced : No
Color range : Limited
Color primaries : BT.2020
Transfer characteristics : PQ
Matrix coefficients : BT.2020 non-constant
Mastering display color primaries : BT.2020
Mastering display luminance : min: 0.0050 cd/m2, max: 1000 cd/m2
Maximum Content Light Level : 1686 cd/m2
Maximum Frame-Average Light Level : 159 cd/m2
Audio
ID : 2
Format : E-AC-3 JOC
Format/Info : Enhanced AC-3 with Joint Object Coding
Commercial name : Dolby Digital Plus with Dolby Atmos
Codec ID : A_EAC3
Duration : 2 h 6 min
Bit rate mode : Constant
Bit rate : 768 kb/s
Channel(s) : 6 channels
Channel layout : L R C LFE Ls Rs
Sampling rate : 48.0 kHz
Frame rate : 31.250 FPS (1536 SPF)
Compression mode : Lossy
Stream size : 697 MiB (3%)
Language : English
Service kind : Complete Main
Default : Yes
Forced : No
Complexity index : 16
Number of dynamic objects : 15
Bed channel count : 1 channel
Bed channel configuration : LFE
Dialog Normalization : -25 dB
compr : -0.28 dB
dialnorm_Average : -25 dB
dialnorm_Minimum : -25 dB
dialnorm_Maximum : -25 dB
RE: Unable to play media with EAC3 codec - jellybeandog - 2025-01-26
Ah ok is it a different issue then? I don't have many HEVC files, mostly H264. Here's one example that I have the issue with:
Code: General
Unique ID : 114873208913889966830035983668124225410 (0x566BC6791C7B6BF41FE2810CE33A8F82)
Complete name : E:\Media\Movies (local)\Ford v Ferrari (2019)\Ford.v.Ferrari.2019.1080p.BluRay.DDP.7.1.x264.mkv
Format : Matroska
Format version : Version 4
File size : 17.6 GiB
Duration : 2 h 32 min
Overall bit rate : 16.5 Mb/s
Frame rate : 23.976 FPS
Encoded date : 2020-02-13 14:32:56 UTC
Writing application : mkvmerge v43.0.0 ('The Quartermaster') 64-bit
Writing library : libebml v1.3.10 + libmatroska v1.5.2
Video
ID : 1
Format : AVC
Format/Info : Advanced Video Codec
Format profile : High@L4.1
Format settings : CABAC / 5 Ref Frames
Format settings, CABAC : Yes
Format settings, Reference frames : 5 frames
Codec ID : V_MPEG4/ISO/AVC
Duration : 2 h 32 min
Bit rate : 15.2 Mb/s
Width : 1 920 pixels
Height : 804 pixels
Display aspect ratio : 2.39:1
Frame rate mode : Constant
Frame rate : 23.976 (24000/1001) FPS
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Scan type : Progressive
Bits/(Pixel*Frame) : 0.412
Stream size : 16.2 GiB (92%)
Title : x264 / 15239 kbps / 1080p / 23.976 fps / 2.40:1 / High Profile 4.1
Writing library : x264 core 159 r2991+50 29469ee t_mod_New [all-bit@all X86_64]
Encoding settings : cabac=1 / ref=5 / deblock=1:-3:-3 / analyse=0x3:0x133 / me=umh / subme=11 / psy=1 / fade_compensate=0.00 / psy_rd=1.10:0.00 / mixed_ref=1 / me_range=64 / chroma_me=1 / trellis=2 / 8x8dct=1 / cqm=0 / deadzone=21,11 / fast_pskip=0 / chroma_qp_offset=-2 / threads=6 / lookahead_threads=1 / sliced_threads=0 / nr=0 / decimate=0 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / fgo=0 / bframes=16 / b_pyramid=2 / b_adapt=2 / b_bias=0 / direct=3 / weightb=1 / open_gop=0 / weightp=2 / keyint=250 / keyint_min=24 / scenecut=40 / intra_refresh=0 / rc_lookahead=250 / rc=crf / mbtree=0 / crf=16.8000 / qcomp=0.65 / qpmin=0:0:0 / qpmax=69:69:69 / qpstep=4 / vbv_maxrate=62500 / vbv_bufsize=78125 / crf_max=0.0 / nal_hrd=none / filler=0 / ip_ratio=1.30 / pb_ratio=1.20 / aq=3:0.78 / aq-sensitivity=10.00 / aq-factor=1.00:1.00:1.00 / aq2=0 / aq3=0 / zones=56,561,b=1.5/789,1093,b=1.5/3517,3672,b=1.5/3792,3862,b=1.5/4028,4056,b=1.5/6399,6469,b=1.3/9985,10054,b=1.3/10136,10309,b=1.3/14470,15144,b=1.5/15718,16176,b=1.5/17671,17740,b=1.3/21480,21630,b=1.3/22121,22245,b=1.5/24472,24620,b=1.5/24974,25008,b=1.3/25041,25091,b=1.3/25359,25397,b=1.3/25653,25736,b=1.3/26022,26038,b=1.3/26125,26496,b=1.3/26599,26723,b=1.3/26785,26836,b=1.3/27017,27065,b=1.3/27124,27277,b=1.3/27326,27420,b=1.3/27466,27520,b=1.3/27561,27638,b=1.3/27662,27721,b=1.3/27749,27808,b=1.3/27897,27947,b=1.3/28012,28056,b=1.3/28357,28439,b=1.3/37154,37242,b=1.5/40136,40225,b=1.3/40856,40929,b=1.3/41915,41989,b=1.5/50201,50275,b=1.3/50746,50813,b=1.3/50855,50914,b=1.3/50968,51060,b=1.3/62702,62756,b=1.3/63311,63358,b=1.3/64000,64120,b=1.3/64216,64254,b=1.3/67676,67850,b=1.3/67965,68319,b=1.3/68824,69574,b=1.3/76949,76969,b=1.3/80480,80537,b=1.3/82688,82997,b=1.3/83036,83145,b=1.3/83272,84122,b=1.3/84180,84293,b=1.3/84412,84584,b=1.3/84917,85753,b=1.3/86361,86446,b=1.3/86554,86636,b=1.3/86696,86816,b=1.3/86982,87412,b=1.3/87567,87693,b=1.3/90712,91183,b=1.3/108872,109053,b=1.3/109661,109739,b=1.3/110067,110116,b=1.3/110255,110349,b=1.3/110435,110450,b=1.3/127764,127929,b=1.3/129341,129366,b=1.5/129395,129417,b=1.5/129442,129479,b=1.5/129989,130054,b=1.5/130914,130939,b=1.3/133482,133577,b=1.2/133664,133801,b=1.2/133870,134173,b=1.2/134174,134337,b=1.3/134783,134861,b=1.3/135132,135594,b=1.3/135756,135784,b=1.3/136105,136678,b=1.3/136817,136878,b=1.3/137747,137823,b=1.3/138143,138199,b=1.3/138889,138933,b=1.3/139248,139279,b=1.3/139648,139836,b=1.3/140079,140313,b=1.3/145798,145946,b=1.3/150085,150127,b=1.3/150232,150308,b=1.3/150457,150524,b=1.5/150525,150667,b=1.3/150939,151016,b=1.3/151132,151243,b=1.3/152013,152067,b=1.3/152229,152256,b=1.3/152616,152651,b=1.5/153044,153118,b=1.5/156285,156306,b=1.3/156537,156594,b=1.3/157390,157401,b=1.5/157438,157499,b=1.3/158015,158060,b=1.3/158800,159175,b=1.3/164919,164931,b=1.5/169110,169121,b=1.5/173376,173633,b=1.5/174411,174445,b=1.3/174954,175014,b=1.3/177031,177042,b=1.5/177055,177077,b=1.3/177163,177209,b=1.3/186129,186161,b=1.3/186204,186238,b=1.3/186268,186301,b=1.3/187048,187083,b=1.3/187201,187259,b=1.3/187823,187919,b=1.3/189283,189453,b=1.3/189488,189661,b=1.3/192365,192479,b=1.3/197297,197518,b=1.3/197596,197695,b=1.3/197764,197852,b=1.3/199884,200000,b=1.3/200061,200122,b=1.3/200176,200231,b=1.3/200812,201062,b=1.3/201240,201314,b=1.3/202217,202550,b=1.3/205292,205507,b=1.3/210692,211409,b=1.5/211502,211658,b=1.5
Language : English
Default : Yes
Forced : No
Audio
ID : 2
Format : E-AC-3
Format/Info : Enhanced AC-3
Commercial name : Dolby Digital Plus
Format profile : Blu-ray Disc
Codec ID : A_EAC3
Duration : 2 h 32 min
Bit rate mode : Constant
Bit rate : 1 280 kb/s
Channel(s) : 8 channels
Channel layout : L R C LFE Ls Rs Lb Rb
Sampling rate : 48.0 kHz
Frame rate : 31.250 FPS (1536 SPF)
Compression mode : Lossy
Stream size : 1.36 GiB (8%)
Title : DDP / 7.1 / 48 kHz / 1280 kbps
Language : English
Service kind : Complete Main
Default : Yes
Forced : No
Dialog Normalization : -31 dB
compr : -0.28 dB
cmixlev : -3.0 dB
surmixlev : -3 dB
mixlevel : 285 dB
roomtyp : 3
ltrtcmixlev : -3.0 dB
ltrtsurmixlev : -3.0 dB
lorocmixlev : -3.0 dB
lorosurmixlev : -3.0 dB
dialnorm_Average : -31 dB
dialnorm_Minimum : -31 dB
dialnorm_Maximum : -31 dB
RE: Unable to play media with EAC3 codec - theguymadmax - 2025-01-26
Yes, this is a different issue. I tested an x264 EAC3 7.1 file on my Firestick 4K, and playback doesn't start—it just shows a black screen. I'll look into it when I get a chance.
RE: Unable to play media with EAC3 codec - theguymadmax - 2025-01-26
I tested it out, and after I disabled "Refresh rate switching" from Settings > Playback > Advanced playback preferences, the video worked. Before that, it was just a blank screen with no audio, like you described.
|