Jump to content

Emby for Android Shield TV not playing back HDR on all titles


gleep52

Recommended Posts

gleep52

I have a few dozen movies in UHD right now - some work, and some do not work in HDR with Emby on my Shield TV.  If I play them back on an HTPC with Emby Theater, they all have HDR as expected (If they are HDR rips).  Why do some NOT playback in HDR while others do?  I tested them in Plex on my Shield TV and they work in HDR in Plex just like in Emby Theater on my HTPC.  

 

I went through each one of my UHD films and tested playback on my Shield and am including all the log files generated during that time.  The Titles I've tested that DO work with HDR are these:

The Avengers
The Avengers - Age of Ultron
The Black Panther
Cars 3
Deadpool 2
Early Man
The Fast and the Furious
GIJoe The Rise of Cobra
Ghost in the Shell
Ghost in the Shell 2 
Hereditary
Interstellar
Journey to Space
Jurassic Park III
Solo - A Star Wars Story
The Last Reef
Jurassic Park II
Mission Impossible
Mission Impossible - Ghost Protocol
Mission Impossible - Rogue Nation
Mission Impossible II
Mission Impossible III
Pacific Rim - Uprising
Planet Earth II (whichever is there right now)
Predator
Punisher War Zone
Rampage
Saving Private Ryan
Sicario - Day of the Soldado
Star Wars - The Last Jedi
Thor: Ragnarok
X-Men
X-Men: The Last Stand
 
All the other files in the playback log that are not in this list are not triggering HDR but should be (with the exception of a few rips that do not have HDR and are in fact SDR remuxes.
 
Attached are the log files.  Iron Man 2 did not playback with HDR and for some reason started a transcode session so I included those ffmpeg files as well.  It does not trigger a transcode from Emby Theater or Plex on my Shield.
 
Thanks!

embyserver.txt

ffmpeg-directstream-a880f8ca-181b-4ca3-8d27-5663d7dafd01_1.txt

ffmpeg-remux-5b6d44fb-8089-4f04-a8b3-618e429e9975_1.txt

ffmpeg-transcode-5f009903-4086-47d1-8ae1-008decc63100_1.txt

ffmpeg-transcode-9bffdf53-e609-4c55-9c94-2f4253f975ff_1.txt

ffmpeg-transcode-f381a12c-b645-49ca-b0a3-db611879616c_1.txt

ffmpeg-transcode-ff06d8a1-7393-4592-98c3-31e56c7e059d_1.txt

Link to comment
Share on other sites

gleep52

A few I just double checked by trying again is 12 strong, iron man, and batman v superman - one of those doesn't have ANY other audio options, the speaker doesn't even show up in the emby player to pick something else.  The other two I tried are dolby 5.1 - not even TRUEHD or something.  I checked a few that DO work, and they all had truehd7.1 as the default track.  I tried changing one of them to the default 2 channel descriptive audio channel and even that didn't result in HDR, so I don't think it's necessarily FLAC tracks that's the issue here. 

Link to comment
Share on other sites

gleep52

What I learned from that thread is that it is still unresolved - is that right?

 

How does Plex work on my Shield with HDR but Emby doesn’t if it’s a nvidia problem? If it were an nvidia problem, shouldn’t the playback of the same files exhibit similar problems regardless of the app used for playback?

 

I’m not sure what “exoplayer” is, not how to use an external player... is that what I need to do?

 

I’m quite happy with Emby Theater on my htpc since it is gorogeous and a bit brighter than the shield, not to mention lightning fast. But it would be much easier to have my shield do everything since I don’t have an htpc on all my TVs in the house.

Link to comment
Share on other sites

CBers

The question should be, why is Emby transcoding the content.

 

It's well known that ffmpeg does not transcode HDR content, due to limitations, so Direct Streaming is the only way.

 

I have many 4K HDR movies that play just fine on my Shield TV.

 

Also, exoplayer is the default player on the Shield TV.

  • Like 1
Link to comment
Share on other sites

Guest asrequested

It wouldn't surprise me if Plex is using a different decoder, in ExoPlayer. That would be why it works, there. As I understand it, they have a custom build.

 

The issue seems to be centered around ffmpeg. In all instances with 4k HDR problems, ffmpeg is involved. So far, there's an issue with server remux, cuda in mpv, and with ExoPlayer in ATV. They all use ffmpeg.

 

In mpv I can use different decoders and they all work. In ATV, if you use MX as an external player, it will work.

 

So there is definitely an issue with cuda, but I'm starting to think ffmpeg also has a hand in this. But when direct played with a different decoder, it should play correctly.

Edited by Doofus
Link to comment
Share on other sites

Do we know what specific types of content or specific attributes cause this problem?

 

It isn't just "HDR doesn't work" because it does work for a lot of content.

Link to comment
Share on other sites

gleep52

That's why I posted all my logs, in hopes someone can decipher the data...  The way I see HDR working is - the movie starts playback and within a second or two, the color jumps to life.  It seems that SOME of my files don't jump to life and my projector reports SDR mode only.  It is bt.2020, but SDR still.  

 

I have not found a common link.  I thought it might be audio related, but I can't find a common link in audio codecs that are stopping playback (using MediaInfo app to see the stats).

 

So - how do I use a different decoder?  

Link to comment
Share on other sites

Guest asrequested

Do we know what specific types of content or specific attributes cause this problem?

 

It isn't just "HDR doesn't work" because it does work for a lot of content.

It seems to be how they are encoded (HEVC with HDR). Specifically what, I haven't figured out. Nvidia hasn't told me anything.

 

If you can't get a different build of ExoPlayer, then maybe have an external player option specifically for 4k?

 

I don't use cuda for anything in mpv, anymore. The updated cuda (nvdec), works. But nvdec uses ffmpeg's filters. CUDA doesn't. CUDA appears to have it's own way of decoding. Unrelated to this, cuda solves another problem in Theater. So cuda seems to be it's own animal.

Link to comment
Share on other sites

I have the exact same issue on shield. I'm non tech so won't be sharing any logs etc (beyond me :) ). What I can say is that if i use plex, I get hdr 100% of time, same content via emby, won't normally work. The content that does work on emby seems to be truehd audio.. not sure if that helps.

 

Sent from my SM-G965F using Tapatalk

Link to comment
Share on other sites

Guest asrequested

My guess is that new algorithms are being used that aren't properly supported. So when decoded, it doesn't know what to do with the metadata. CUDA is a hardware decoder, as opposed to a decoder that uses the hardware. I think it's in the firmware, so you can't futz with it. D3D is windows, dxva2 is directX etc. So ffmpeg can't work around it. This I think, would be why nvdec and nvenc were created. They both use ffmpeg.

Link to comment
Share on other sites

Guest asrequested

Can you not fork it and build your own? I'm sure there's a dependency you can grab from somewhere, that would provide the tweak you need. When I get enough time, I'm gonna do that with mpv. The community has some tweaks of their own. But maybe because ExoPlayer is Android, there are less options?

Link to comment
Share on other sites

gleep52

We simply don't know at this point.  We will have to investigate more.

 

Let me know if I can provide any insight or testing of a beta app.  

Can you not fork it and build your own? I'm sure there's a dependency you can grab from somewhere, that would provide the tweak you need. When I get enough time, I'm gonna do that with mpv. The community has some tweaks of their own. But maybe because ExoPlayer is Android, there are less options?

I can fetch log files - but the only forking I do has to do with meals of food.  I'm not a coder in the slightest.  

Link to comment
Share on other sites

Guest asrequested

Let me know if I can provide any insight or testing of a beta app.

I can fetch log files - but the only forking I do has to do with meals of food. I'm not a coder in the slightest.

Lol...that was directed at ebr :)

Link to comment
Share on other sites

griffindodd

Reading this thread is confusing. Is there an option on Emby Android builds to use a different player or decoder? I have over 200 HDR rips and none of them seem to work playing on Emby for either my Shield or my 4k Fire TV - both on 4k HDR TVs.

 

Kodi on both devices works fine as it's not attempting to transcode, so is it not using exoplayer?

Edited by griffindodd
  • Like 1
Link to comment
Share on other sites

EODCrafter

It says I'm a tester... not sure if I did this previously or not.  How can I tell if I'm using the beta version?

Play something on the App and look at the server Panel....It will give you the Version..It's also on the Home Page of the App somewhere.

 

5bc655cc5283f_Screenshotfrom201810161618

 

Options >>>> App Settings show's Version on the Lower Right.....

Edited by EODCrafter
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...