jellyfin / jellyfin-androidtv

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

HD Audio Passthrough on Nvidia Shield #281

Open Robert-D opened 4 years ago

Robert-D commented 4 years ago

Hello and sorry if this is already being addressed, but it appears HD audio streams such as DTS-X and TrueHD encoded with Atmos metadata are not being passed properly to receivers/sound bars from the Nvidia Shield. It appears most people are using Kodi as a work around:

https://www.reddit.com/r/jellyfin/comments/ewf73h/audio_passthrough_direct_on_shield_tv/

If there is anything I can do to help please let me know and sorry again if this is a duplicate.

stale[bot] commented 3 years ago

This issue has gone 120 days without comment. To avoid abandoned issues, it will be closed in 21 days if there are no new comments. If you're the original submitter of this issue, please comment confirming if this issue still affects you in the latest release or master branch, or close the issue if it has been fixed. If you're another user also affected by this bug, please comment confirming so. Either action will remove the stale label. This bot exists to prevent issues from becoming stale and forgotten. Jellyfin is always moving forward, and bugs are often fixed as side effects of other changes. We therefore ask that bug report authors remain vigilant about their issues to ensure they are closed if fixed, or re-confirmed - perhaps with fresh logs or reproduction examples - regularly. If you have any questions you can reach us on Matrix or Social Media.

StereotypicalCat commented 3 years ago

Even after #524, i am still unable to get either Atmos or DTS:X to passthrough. Tried both on 11.5 and the newest azure build as of today. EDIT: This is VLC specific, passthrough works on exoplayer and kodi.

stale[bot] commented 3 years ago

This issue has gone 120 days without comment. To avoid abandoned issues, it will be closed in 21 days if there are no new comments. If you're the original submitter of this issue, please comment confirming if this issue still affects you in the latest release or master branch, or close the issue if it has been fixed. If you're another user also affected by this bug, please comment confirming so. Either action will remove the stale label. This bot exists to prevent issues from becoming stale and forgotten. Jellyfin is always moving forward, and bugs are often fixed as side effects of other changes. We therefore ask that bug report authors remain vigilant about their issues to ensure they are closed if fixed, or re-confirmed - perhaps with fresh logs or reproduction examples - regularly. If you have any questions you can reach us on Matrix or Social Media.

Robert-D commented 3 years ago

Thanks for the reminder stale bot, but I would still love to see proper audio passthrough with the native player instead of using VLC.

metronidazole commented 3 years ago

Is it just tracks with atmos or also lossless audio? I am able to passthrough TrueHD and DTS-HD MA without issue when building this from source.

roblav96 commented 3 years ago

More info on this wide-spread problem can be found here: https://github.com/moneytoo/Player/issues/139

jellyfin-bot commented 2 years ago

This issue has gone 120 days without comment. To avoid abandoned issues, it will be closed in 21 days if there are no new comments.

If you're the original submitter of this issue, please comment confirming if this issue still affects you in the latest release or master branch, or close the issue if it has been fixed. If you're another user also affected by this bug, please comment confirming so. Either action will remove the stale label.

This bot exists to prevent issues from becoming stale and forgotten. Jellyfin is always moving forward, and bugs are often fixed as side effects of other changes. We therefore ask that bug report authors remain vigilant about their issues to ensure they are closed if fixed, or re-confirmed - perhaps with fresh logs or reproduction examples - regularly. If you have any questions you can reach us on Matrix or Social Media.

bokysan commented 2 years ago

Anybody tried this lately? As of late, I don't have a lot of issues using ExoPlayer, but would need to recheck if this is still an issue with the latest Jellyfin version.

ElegyD commented 2 years ago

I've got Jellyfin 10.7.7 with 0.12.3 on my Nvidia Shield. I'm using Exoplayer for Dolby Vision compatibility. Dolby TrueHD passthrough works, but DTS-HD MA doesn't. Regardless of the "Bitstream DTS audio" toggled on or off.

Edit: 0.13.0 (having #1369) still only plays DTS instead of DTS-HD MA for me.

morkyy commented 2 years ago

Same issue here on the shield. Most codecs passthrough just fine (including Dolby TrueHD and Atmos). But DTS seems to be very buggy. A lot of files with DTS:X/Neural X audio play fine but multiple files with DTS-HD MA and sometimes DTS:X MA do not work. Video will play fine but there will be no audio regardless of the "bitstream DTS audio" setting. Since v0.13 some files might not play at all even though they used to play with v0.12 with no sound.

Receiver detects the correct audio format.

roblav96 commented 2 years ago

@nielsvanvelzen Here is a diff of adding DTS-HD to ExoPlayer's MatroskaExtractor.java: https://github.com/moneytoo/ExoPlayer/commit/50d7b68756e281342c85ee277ff3929a1fdf6c44

morkyy commented 2 years ago

To add to this, I realised that for some DTS-HD MA files where sound doesn't work there's a small crackling sound that comes up randomly. I was also playing with the settings a bit and noticed that the app would attempt to open these files with lib vlc instead of exoplayer. exoplayer seems to be playing the files correctly most of the times without transcoding. However even with selecting exoplayer there's still some files that do not play at all.

deltonio2 commented 2 years ago

I have the same problem on a Philips 65OLED804 (TPM191E) Android TV with Jellyfin client 0.13.7 using libVLC and Jellyfin server 10.8.1. If I use Jellyfin with ExoPlayer, the DTS HDMA is playing correctly, but I have a lot of other problems with this player (for example some files doesn't play, the other take more than 30 sec. for begin playing).

jaytea33 commented 2 years ago

This issue has been super annoying for months. The only ones that don't work for me have EAC3 audio and everything else works fine. Exoplayer plays the video, libvlc crashes, but external VLC works perfectly

jameskimmel commented 1 year ago

To add to this, I realised that for some DTS-HD MA files where sound doesn't work there's a small crackling sound that comes up randomly.

I also experience this issue with Jellyfin Desktop on macOS. Maybe this is a deeper rooted problem. Let me know if you need further information to hunt down the issue.

eengert commented 1 year ago

DTS:X doesn't get passed through using ExoPlayer on my 2019 Shield Pro either. If I play the same movie through JellyCon addon in Kodi (Mavens Kodinerds Nexus 20 RC2), it correctly passes the DTS:X through to my Yamaha AVR. With the Jellyfin app, DTS:X tracks are played as DTS 5.1.

TraderHowell commented 1 year ago

I am having the exact same issue on my 2019 Nvidia Shield TV Pro. I'm using Kodi as a workaround for now, but both ExoPlayer and LibVLC fail to properly passthrough DTS-HD MA when using the Jellyfin client.

jellyfin-bot commented 1 year ago

This issue has gone 120 days without comment. To avoid abandoned issues, it will be closed in 21 days if there are no new comments.

If you're the original submitter of this issue, please comment confirming if this issue still affects you in the latest release or master branch, or close the issue if it has been fixed. If you're another user also affected by this bug, please comment confirming so. Either action will remove the stale label.

This bot exists to prevent issues from becoming stale and forgotten. Jellyfin is always moving forward, and bugs are often fixed as side effects of other changes. We therefore ask that bug report authors remain vigilant about their issues to ensure they are closed if fixed, or re-confirmed - perhaps with fresh logs or reproduction examples - regularly. If you have any questions you can reach us on Matrix or Social Media.

ThisIsTheOnlyUsernameAvailable commented 1 year ago

Replying to keep this issue open. It's a show-stopper for a lot of home theatre setups.

WSt89 commented 1 year ago

I am facing the same issue. ExoPlayer runs very smoothly on my shield pro but it can't pass through DTS:MA and DTS:X. As they are very popular formats, it's support would make jellyfin a great choice for home theaters. Switching to an external player is always a work around. Can somebody explain why it's currently not possible and is somebody currently working on it?

TraderHowell commented 1 year ago

Also still facing the same issue with Jellyfin on my Nvidia Shield. I would love if anyone can provide any guidance or insight into starting to identify a solution. Neither ExoPlayer or libVLC can properly passthrough DTS-HD MA, but Dolby TrueHD passes through just fine. The amplifiers I have tested with all show DTS-HD MA for a second and then switch to lossy DTS. I have tested with so many different hardware configurations and sample formats, but nothing seems to work. Interestingly, Plex seems to work fine with the same sample files, but I would prefer to not use Plex.

WSt89 commented 11 months ago

My current workaround is to use Kodi's Jellyfin plugin, however I would prefer to use Jellyfin with ExoPlayer instead.

Starfoxfs commented 8 months ago

Same here with Nvidia Shield TV Pro 2019, i don´t wan´t to use Kodi with JellyFin Plugin.

Why you need Jellyfin then ? u can use Kodi alone to Stream Movies in DTS-HD MA Plex does this too in Free Version.

But i like the UserInterface of JellyFin, so it would be nice if we get this HD Audio Feature for the Jellyfin Android Client.

WSt89 commented 8 months ago

I still use Jellyfin as I have multiple clients and I want to have my libary managed on the server. I only use Kodi + Jellyfin Plugin in my home cinema. Plex is too bloated. However, this thread is about to make HD Audio Passthrough possible...

mikeporterinmd commented 5 months ago

I notice that the audio codec passed from JellyFin itself is dts even for dts-hd ma. I have figured out how to build the source and get the debugging app running on my shield 2019 pro. Once I figure out how to debug it and what the control flow is perhaps I can make some headway. dts-hd ma is by far the most common sound track type of quality that I have. A real shame we can't get it to work with a nice player like this one. We'll see. I'm a long time C, Perl and now Python programmer. It's going to take me a little time to come to speed in this Android environment and some of these languages and templates that are used. I randomly tried changing some stuff, but to no effect. One interesting thing: the new media display shows all the tracks available in a particular container. DTS-HD MA is properly identified. Multiple streams of magic at play here?

Mike

Nicolas-Ger commented 4 months ago

I also have an Nvidia Shield TV Pro 2019 and DTS HD or DTS X 7.1 is output as DTS 5.1 with the Exoplayer. With libVLC it works but with a delay that is so high that I can't set it up correctly. I used Plex before and it worked without a problem and it also plays correctly in Kodi with the Exoplayer, so it must be something to do with Jellyfin or the interaction with ffmpeg. I think everyone with the Nvidia Shield TV pro has this problem. I hope that the update to 10.9 will bring an improvement.

mikeporterinmd commented 4 months ago

I also have an Nvidia Shield TV Pro 2019 and DTS HD or DTS X 7.1 is output as DTS 5.1 with the Exoplayer. With libVLC it works but with a delay that is so high that I can't set it up correctly. I used Plex before and it worked without a problem and it also plays correctly in Kodi with the Exoplayer, so it must be something to do with Jellyfin or the interaction with ffmpeg. I think everyone with the Nvidia Shield TV pro has this problem. I hope that the update to 10.9 will bring an improvement.

Just (Video) Player (On the app store) works well as an external player for JellyFin and handles DTS-HD MA 7.1 etc. It's a nice player and very lightweight. No where near the baggage that Kodi brings in. I think there are some things like resume that might not work correctly... not sure. I don't know why the JellyFin Android developers don't work with the Just (Video) Player author to merge the code bases. I took a look at the code, but there is no real documentation in the JellyFin app, so lacking experience in Android development, merging the code wasn't worth it for me. Not when I can just use the other player.

jellyfin-bot commented 2 days ago

This issue has gone 120 days without comment. To avoid abandoned issues, it will be closed in 21 days if there are no new comments.

If you're the original submitter of this issue, please comment confirming if this issue still affects you in the latest release or master branch, or close the issue if it has been fixed. If you're another user also affected by this bug, please comment confirming so. Either action will remove the stale label.

This bot exists to prevent issues from becoming stale and forgotten. Jellyfin is always moving forward, and bugs are often fixed as side effects of other changes. We therefore ask that bug report authors remain vigilant about their issues to ensure they are closed if fixed, or re-confirmed - perhaps with fresh logs or reproduction examples - regularly. If you have any questions you can reach us on Matrix or Social Media.

ThisIsTheOnlyUsernameAvailable commented 2 days ago

Bug still exists. Not stale.