Jellyfin Forum
Unable to Play DTS:X Passthru via AndroidTV - Printable Version

+- Jellyfin Forum (https://forum.jellyfin.org)
+-- Forum: Support (https://forum.jellyfin.org/f-support)
+--- Forum: Troubleshooting (https://forum.jellyfin.org/f-troubleshooting)
+--- Thread: Unable to Play DTS:X Passthru via AndroidTV (/t-unable-to-play-dts-x-passthru-via-androidtv)

Pages: 1 2


Unable to Play DTS:X Passthru via AndroidTV - allaboutsound - 2024-01-01

I'm struggling a bit here. I have 8-mile on UHD 4k. The film plays great on my atmos soundbar via the PC but if I move it to my NAS running Jellyfin via a docker container the film is silent and the video playback seems slower, around 0.5x. My NAS resource is at 5% cpu and and 50% memory utilization, no other 4k content has given me troubles thus far. I'm watching on an AndroidTV

Android TV 0.16.1

Media Info on audio track:

ID                                      : 2
Format                                : DTS XLL X
Format/Info                         : Digital Theater Systems
Commercial name                 : DTS-HD MA + DTS:X
Codec ID                              : A_DTS
Duration                               : 1 h 50 min
Bit rate mode                        : Variable
Channel(s)                            : 8 channels
Channel layout                      : C L R LFE Lb Rb Lss Rss Objects
Sampling rate                        : 48.0 kHz
Frame rate                            : 93.750 FPS (512 SPF)
Bit depth                              : 24 bits
Compression mode                : Lossless
Title                                     : DTS-HD MA Surround 7.1
Language                              : English
Default                                  : Yes
Forced                                   : No

Any ideas on what I can do to fix this issue? Is this a limitation with the AndroidTV codec support?


RE: Unable to Play DTS:X Passthru via AndroidTV - TheDreadPirate - 2024-01-01

Are you using ExoPlayer or libVLC or auto? Do you have DTS/Dolby passthrough enabled/disabled?


RE: Unable to Play DTS:X Passthru via AndroidTV - allaboutsound - 2024-01-01

Thanks for the reply!

I am using ExoPlayer, Max streaming bitrate 120 mbit/s, Audio Output: Direct, Bitstream Dolby Digital Audio checked, Bitstream DTS audio checked on the AndroidTV.

Here are some log outputs:

[2023-12-31 22:31:13.945 -06:00] [INF] [80] Jellyfin.Api.Helpers.MediaInfoHelper: User policy for "REDACTED". EnablePlaybackRemuxing: True EnableVideoPlaybackTranscoding: True EnableAudioPlaybackTranscoding: True
[2023-12-31 22:31:13.945 -06:00] [INF] [80] Jellyfin.Api.Helpers.MediaInfoHelper: StreamBuilder.BuildVideoItem( Profile="AndroidTV-ExoPlayer", Path="/data/media/movies/8 Mile (2002) [tt0298203]/8 Mile (2002) [tt0298203].mkv", AudioStreamIndex=null, SubtitleStreamIndex=null ) => ( PlayMethod=DirectPlay, TranscodeReason=0 ) "mediaConfused-facevideos/c558cb8d-62be-2397-5b7f-b1103799c467/stream.mkv?MediaSourceId=c558cb8d62be23975b7fb1103799c467&Static=true&VideoCodec=hevc&AudioCodec=dts&AudioStreamIndex=1&api_key=<token>&SubtitleMethod=Encode&Tag=80e931f689f7f72184f874629d77d0a0"
[2023-12-31 22:31:35.382 -06:00] [INF] [75] Emby.Server.Implementations.Session.SessionWebSocketListener: Sending ForceKeepAlive message to 1 inactive WebSockets.
[2023-12-31 22:32:11.881 -06:00] [INF] [80] Emby.Server.Implementations.Session.SessionManager: Playback stopped reported by app "Android TV" "0.16.1" playing "8 Mile". Stopped at "899264" ms
[2023-12-31 22:32:19.715 -06:00] [INF] [82] Jellyfin.Api.Helpers.MediaInfoHelper: User policy for "REDACTED". EnablePlaybackRemuxing: True EnableVideoPlaybackTranscoding: True EnableAudioPlaybackTranscoding: True
[2023-12-31 22:32:19.716 -06:00] [INF] [82] Jellyfin.Api.Helpers.MediaInfoHelper: StreamBuilder.BuildVideoItem( Profile="AndroidTV-libVLC", Path="/data/media/movies/8 Mile (2002) [tt0298203]/8 Mile (2002) [tt0298203].mkv", AudioStreamIndex=null, SubtitleStreamIndex=null ) => ( PlayMethod=DirectPlay, TranscodeReason=0 ) "mediaConfused-facevideos/c558cb8d-62be-2397-5b7f-b1103799c467/stream.mkv?MediaSourceId=c558cb8d62be23975b7fb1103799c467&Static=true&VideoCodec=hevc&AudioCodec=dts&AudioStreamIndex=1&api_key=<token>&Tag=80e931f689f7f72184f874629d77d0a0"
[2023-12-31 22:32:19.771 -06:00] [INF] [83] Jellyfin.Api.Helpers.MediaInfoHelper: User policy for "REDACTED". EnablePlaybackRemuxing: True EnableVideoPlaybackTranscoding: True EnableAudioPlaybackTranscoding: True
[2023-12-31 22:32:19.771 -06:00] [INF] [83] Jellyfin.Api.Helpers.MediaInfoHelper: StreamBuilder.BuildVideoItem( Profile="AndroidTV-ExoPlayer", Path="/data/media/movies/8 Mile (2002) [tt0298203]/8 Mile (2002) [tt0298203].mkv", AudioStreamIndex=null, SubtitleStreamIndex=null ) => ( PlayMethod=DirectPlay, TranscodeReason=0 ) "mediaConfused-facevideos/c558cb8d-62be-2397-5b7f-b1103799c467/stream.mkv?MediaSourceId=c558cb8d62be23975b7fb1103799c467&Static=true&VideoCodec=hevc&AudioCodec=dts&AudioStreamIndex=1&api_key=<token>&Tag=80e931f689f7f72184f874629d77d0a0"

------

FFMPEG Transcode Log:

ffmpeg version 5.1.4-Jellyfin Copyright © 2000-2023 the FFmpeg developers
built with gcc 11 (Ubuntu 11.4.0-1ubuntu1~22.04)
configuration: --prefix=/usr/lib/jellyfin-ffmpeg --target-os=linux --extra-libs=-lfftw3f --extra-version=Jellyfin --disable-doc --disable-ffplay --disable-ptx-compression --disable-static --disable-libxcb --disable-sdl2 --disable-xlib --enable-lto --enable-gpl --enable-version3 --enable-shared --enable-gmp --enable-gnutls --enable-chromaprint --enable-libdrm --enable-libass --enable-libfreetype --enable-libfribidi --enable-libfontconfig --enable-libbluray --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libopenmpt --enable-libdav1d --enable-libwebp --enable-libvpx --enable-libx264 --enable-libx265 --enable-libzvbi --enable-libzimg --enable-libfdk-aac --arch=amd64 --enable-libsvtav1 --enable-libshaderc --enable-libplacebo --enable-vulkan --enable-opencl --enable-vaapi --enable-amf --enable-libmfx --enable-ffnvcodec --enable-cuda --enable-cuda-llvm --enable-cuvid --enable-nvdec --enable-nvenc
libavutil 57. 28.100 / 57. 28.100
libavcodec 59. 37.100 / 59. 37.100
libavformat 59. 27.100 / 59. 27.100
libavdevice 59. 7.100 / 59. 7.100
libavfilter 8. 44.100 / 8. 44.100
libswscale 6. 7.100 / 6. 7.100
libswresample 4. 7.100 / 4. 7.100
libpostproc 56. 6.100 / 56. 6.100
[matroska,webm @ 0x55ae9d916900] Could not find codec parameters for stream 2 (Subtitle: hdmv_pgs_subtitle (pgssub)): unspecified size
Consider increasing the value for the 'analyzeduration' (200000000) and 'probesize' (5000000) options
Input #0, matroska,webm, from 'fileConfused-facedata/media/movies/8 Mile (2002) [tt0298203]/8 Mile (2002) [tt0298203].mkv':
Metadata:
title : 8 Mile
creation_time : 2023-12-31T20:58:59.000000Z
ENCODER : Lavf60.16.100
Duration: 01:50:28.93, start: 0.000000, bitrate: 25097 kb/s
Chapters:
Chapter #0:0: start 0.000000, end 192.818000
Metadata:
title : Chapter 1
Chapter #0:1: start 192.818000, end 608.525000
Metadata:
title : Chapter 2
Chapter #0:2: start 608.525000, end 892.392000
Metadata:
title : Chapter 3
Chapter #0:3: start 892.392000, end 1191.941000
Metadata:
title : Chapter 4
Chapter #0:4: start 1191.941000, end 1411.702000
Metadata:
title : Chapter 5
Chapter #0:5: start 1411.702000, end 1641.557000
Metadata:
title : Chapter 6
Chapter #0:6: start 1641.557000, end 2081.538000
Metadata:
title : Chapter 7
Chapter #0:7: start 2081.538000, end 2340.338000
Metadata:
title : Chapter 8
Chapter #0:8: start 2340.338000, end 2809.849000
Metadata:
title : Chapter 9
Chapter #0:9: start 2809.849000, end 3175.214000
Metadata:
title : Chapter 10
Chapter #0:10: start 3175.214000, end 3708.538000
Metadata:
title : Chapter 11
Chapter #0:11: start 3708.538000, end 3963.293000
Metadata:
title : Chapter 12
Chapter #0:12: start 3963.293000, end 4304.801000
Metadata:
title : Chapter 13
Chapter #0:13: start 4304.801000, end 4428.633000
Metadata:
title : Chapter 14
Chapter #0:14: start 4428.633000, end 4605.518000
Metadata:
title : Chapter 15
Chapter #0:15: start 4605.518000, end 5071.400000
Metadata:
title : Chapter 16
Chapter #0:16: start 5071.400000, end 5277.314000
Metadata:
title : Chapter 17
Chapter #0:17: start 5277.314000, end 5899.811000
Metadata:
title : Chapter 18
Chapter #0:18: start 5899.811000, end 6211.163000
Metadata:
title : Chapter 19
Chapter #0:19: start 6211.163000, end 6329.782000
Metadata:
title : Chapter 20
Chapter #0:20: start 6329.782000, end 6628.831000
Metadata:
title : Chapter 21
Stream #0:0: Video: hevc (Main 10), yuv420p10le(tv, bt2020nc/bt2020/smpte2084), 3840x2160 [SAR 1:1 DAR 16:9], 23.98 fps, 23.98 tbr, 1k tbn (default)
Metadata:
DURATION : 01:50:28.914000000
Side data:
Content Light Level Metadata, MaxCLL=1000, MaxFALL=110
Mastering Display Metadata, has_primaries:1 has_luminance:1 r(0.6800,0.3200) g(0.2650,0.6900) b(0.1500 0.0600) wp(0.3127, 0.3290) min_luminance=0.005000, max_luminance=1000.000000
Stream #0:1(eng): Audio: dts (DTS-HD MA), 48000 Hz, 7.1, s32p (24 bit) (default)
Metadata:
title : DTS-HD MA Surround 7.1
DURATION : 01:50:28.928000000
Stream #0:2(eng): Subtitle: hdmv_pgs_subtitle
Metadata:
DURATION : 01:45:32.243000000
Stream mapping:
Stream #0:0 -> #0:0 (hevc (native) -> h264 (libx264))
Stream #0:1 -> #0:1 (dts (dca) -> aac (libfdk_aac))
Press [q] to stop, [?] for help
[libx264 @ 0x55ae9d939f00] using SAR=1/1
[libx264 @ 0x55ae9d939f00] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 0x55ae9d939f00] profile Main, level 5.0, 4:2:0, 8-bit
[libx264 @ 0x55ae9d939f00] 264 - core 163 r3060 5db6aa6 - H.264/MPEG-4 AVC codec - Copyleft 2003-2021 - http://www.videolan.org/x264.html - options: cabac=1 ref=1 deblock=1:0:0 analyse=0x1:0 me=dia subme=0 psy=1 psy_rd=1.00:0.00 mixed_ref=0 me_range=4 chroma_me=0 trellis=0 8x8dct=0 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=0 threads=6 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=1 keyint=250 keyint_min=23 scenecut=0 intra_refresh=0 rc_lookahead=10 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 vbv_maxrate=23717 vbv_bufsize=47434 crf_max=0.0 nal_hrd=none filler=0 ip_ratio=1.40 aq=1:1.00
Output #0, hls, to '/config/data/transcodes/7de6619bb5b6dc8a9eab90b8542b34ec.m3u8':
Metadata:
encoder : Lavf59.27.100
Stream #0:0: Video: h264, yuv420p(tv, bt709, progressive), 2560x1440 [SAR 1:1 DAR 16:9], q=2-31, 23.98 fps, 90k tbn (default)
Metadata:
encoder : Lavc59.37.100 libx264
Side data:
cpb: bitrate max/min/avg: 23717000/0/0 buffer size: 47434000 vbv_delay: N/A
Content Light Level Metadata, MaxCLL=1000, MaxFALL=110
Mastering Display Metadata, has_primaries:1 has_luminance:1 r(0.6800,0.3200) g(0.2650,0.6900) b(0.1500 0.0600) wp(0.3127, 0.3290) min_luminance=0.005000, max_luminance=1000.000000
Stream #0:1: Audio: aac, 48000 Hz, 7.1(wide), s16, 128 kb/s (default)
Metadata:
encoder : Lavc59.37.100 libfdk_aac
frame= 1 fps=0.0 q=0.0 size=N/A time=00:00:00.00 bitrate=N/A speed= 0x
frame= 16 fps=0.0 q=0.0 size=N/A time=00:00:00.64 bitrate=N/A speed=1.05x
frame= 33 fps= 29 q=28.0 size=N/A time=00:00:01.34 bitrate=N/A speed= 1.2x
frame= 48 fps= 30 q=28.0 size=N/A time=00:00:01.98 bitrate=N/A speed=1.22x
frame= 63 fps= 29 q=28.0 size=N/A time=00:00:02.60 bitrate=N/A speed= 1.2x
frame= 77 fps= 28 q=28.0 size=N/A time=00:00:03.17 bitrate=N/A speed=1.17x
frame= 91 fps= 28 q=28.0 size=N/A time=00:00:03.75 bitrate=N/A speed=1.15x
[hls @ 0x55ae9d9342c0] Opening '/config/data/transcodes/7de6619bb5b6dc8a9eab90b8542b34ec0.ts' for writing
frame= 101 fps= 27 q=28.0 size=N/A time=00:00:04.18 bitrate=N/A speed=1.11x
frame= 111 fps= 26 q=28.0 size=N/A time=00:00:04.58 bitrate=N/A speed=1.07x
frame= 120 fps= 25 q=28.0 size=N/A time=00:00:04.97 bitrate=N/A speed=1.02x
frame= 128 fps= 24 q=28.0 size=N/A time=00:00:05.31 bitrate=N/A speed=0.987x
frame= 137 fps= 23 q=28.0 size=N/A time=00:00:05.67 bitrate=N/A speed=0.945x
frame= 145 fps= 22 q=28.0 size=N/A time=00:00:06.01 bitrate=N/A speed=0.919x
frame= 156 fps= 22 q=28.0 size=N/A time=00:00:06.46 bitrate=N/A speed=0.895x
[hls @ 0x55ae9d9342c0] Opening '/config/data/transcodes/7de6619bb5b6dc8a9eab90b8542b34ec1.ts' for writing
frame= 166 fps= 21 q=28.0 size=N/A time=00:00:06.89 bitrate=N/A speed=0.889x

[q] command received. Exiting.

[hls @ 0x55ae9d9342c0] Opening '/config/data/transcodes/7de6619bb5b6dc8a9eab90b8542b34ec2.ts' for writing
frame= 169 fps= 20 q=-1.0 Lsize=N/A time=00:00:07.04 bitrate=N/A speed=0.852x
video:1295kB audio:113kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
[libx264 @ 0x55ae9d939f00] frame I:3 Avg QP:12.61 size: 18085
[libx264 @ 0x55ae9d939f00] frame P:52 Avg QP:18.25 size: 13844
[libx264 @ 0x55ae9d939f00] frame B:114 Avg QP:20.24 size: 4831
[libx264 @ 0x55ae9d939f00] consecutive B-frames: 5.9% 7.1% 16.0% 71.0%
[libx264 @ 0x55ae9d939f00] mb I I16..4: 92.2% 0.0% 7.8%
[libx264 @ 0x55ae9d939f00] mb P I16..4: 24.3% 0.0% 0.0% P16..4: 11.7% 0.0% 0.0% 0.0% 0.0% skip:64.0%
[libx264 @ 0x55ae9d939f00] mb B I16..4: 3.0% 0.0% 0.0% B16..8: 8.7% 0.0% 0.0% direct: 2.4% skip:86.0% L0:53.5% L1:42.3% BI: 4.2%
[libx264 @ 0x55ae9d939f00] coded y,uvDC,uvAC intra: 3.5% 27.9% 2.7% inter: 0.8% 5.4% 0.0%
[libx264 @ 0x55ae9d939f00] i16 v,h,dc,p: 50% 17% 7% 25%
[libx264 @ 0x55ae9d939f00] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 27% 28% 18% 9% 3% 3% 5% 4% 3%
[libx264 @ 0x55ae9d939f00] i8c dc,h,v,p: 53% 19% 20% 9%
[libx264 @ 0x55ae9d939f00] Weighted P-Frames: Y:0.0% UV:0.0%
[libx264 @ 0x55ae9d939f00] kb/s:1503.70


RE: Unable to Play DTS:X Passthru via AndroidTV - TheDreadPirate - 2024-01-01

Ok. So Android TV is built into the TV. I'm assuming you are trying to passthrough to a receiver or soundbar that, I'm assuming, supports those formats. Is the receiver/soundbar connected to the e-ARC port on your TV? Or just a standard ARC port? Standard ARC doesn't support DTS-X/MA or Dolby TrueHD.


RE: Unable to Play DTS:X Passthru via AndroidTV - allaboutsound - 2024-01-01

Ya that is correct. I have a Sony Bravia XR55A80L TV that runs Android TV and Jellyfin.

On that TV it has an E-Arc output which I connect to my Sony HT-A7000 7.1.2 soundbar.

Everything has worked great so far but it seems like DTS:X and DTS-HD are giving me trouble. I only have 8-Mile and A Beautiful Day in the Neighborhood with 4K DTS-HD or X and both have some playback audio issues or visual stutter.

The rest of my 4k library are in TrueHD and that works great. Just watched Barbie this morning with no hiccups.

My TV is over wifi, could it be network speed? Should I run an ethernet connection to my router?

Additionally I am considering getting an Intel NUC for transcoding in the near future if that will improve playback.


RE: Unable to Play DTS:X Passthru via AndroidTV - TheDreadPirate - 2024-01-01

Make sure in the TV settings (not Jellyfin) that all the passthrough options are set correctly.


RE: Unable to Play DTS:X Passthru via AndroidTV - dinosm - 2024-01-02

ExoPlayer can't do DTS:X (or -HD), it just gives DTS. Try with libVLC.

My setup is similar, but my JF is on a Shield, which goes to a soundbar via HDMI, which then goes to the TV. With ExoPlayer, no DTS:X, with libVLC yes DTS:X (but then, libVLC can't do Dolby Vision...).


RE: Unable to Play DTS:X Passthru via AndroidTV - allaboutsound - 2024-01-02

Dinosm, nailed it on the head for me. LibVLC at least fixed the no audio and frame rate issues so we can still watch the film. Thank you! Sad we can’t have Dolby Vision on top of it.

I tried setting jellyfin to automatically choose a player but it didn’t switch from exoplayer to LibVLC, you’d think a check would be programmed for DTS:X -HD to automatically switch from Exoplayer.

Anyway, thanks again, found a workaround. Smiling-face


RE: Unable to Play DTS:X Passthru via AndroidTV - allaboutsound - 2024-01-02

Actually I take it back, so the audio will play, but it is 4-6 seconds delayed consistently :-(


RE: Unable to Play DTS:X Passthru via AndroidTV - dinosm - 2024-01-02

There is a setting somewhere in JF client to adjust audio delay I think.