Goros 2 Posted yesterday at 02:31 PM Posted yesterday at 02:31 PM (edited) I know this has been requested in the past, but it's been years (almost 7) since then, and it's not live in a usable form on Emby for Android. There's a fundamental misunderstanding on how codecs are handled and what can and can't be passed via TOSLINK, Arc or eArc. With an Emby for Android install on a TV - in this case, a Bravia x95j, Emby (correctly) sees that the TV can decode AAC audio in 2.0, 5.1, etc. What it does not see is that if the TV is set for passthrough to an audio receiver or soundbar, it CANNOT PASS AAC OVER HDMI - because AAC and HDMI do not ever work together. Then, by default, TVs will downmix this to PCM 2.0 because again - HDMI hates AAC, and Arc does not support PCM 5.1/7.1 - there just isn't enough bandwidth in TOSLINK or Arc to make it work. While eArc CAN carry pcm bitstream 5.1/7.1 - TV's will always force AAC down to PCM 2.0 to send it via passthrough on any HDMI link. There is no TV on the market that natively remixes AAC 5.1/7.1 to any type of multichannel format in order to pass it to another device. It's always remixed to PCM 2.0. Kodi has the ability to force-flag a conversion of any AAC audio to AC3 in the options - Emby's built-in option relies on a hardware detection algo that doesn't see if the codec is being sent anywhere other than the TV it's installed on. Here's the TL;DR Problem - no option to force AAC to AC3 conversion on a device with native AAC decode, but AAC can't be sent over HDMI if a receiver or soundbar is involved for the audio playback. PCM 2.0 is the result, 100% of the time. Cause - AAC doesn't play nice with HDMI, and TOSLINK/Arc don't have the bandwidth to support it in multichannel, even if they did. Emby does not consider devices down the chain that might be handling audio from the TV via Arc, eArc or Toslink - only the base hardware capabilities of the device it's installed on. Solution - instead of an "if a video uses a codec but the system Emby is installed on has incompatible hardware, force conversion to AC3" option, add an "always convert to AC3 for these codecs" option, similar to Kodi's. Edited yesterday at 02:40 PM by Goros context clarity / grammar x2
visproduction 369 Posted yesterday at 06:45 PM Posted yesterday at 06:45 PM Goros, My media content uses AAC audio at the highest bitrate and it always plays fine, directly to TV internal speakers using an HDMI cable. Your system has perhaps something in between like an AV amp or the connection directly to speakers or pass through to speakers, causes some issue. I don't use AC3 because going to a windows or TV web browser AC3 or EC3 audio always triggers a transcoding and AAC doesn't. Why do you think your setup has AAC connection issues and my direct from server to TV has no issue?
Goros 2 Posted 21 hours ago Author Posted 21 hours ago (edited) 2 hours ago, visproduction said: Goros, My media content uses AAC audio at the highest bitrate and it always plays fine, directly to TV internal speakers using an HDMI cable. Your system has perhaps something in between like an AV amp or the connection directly to speakers or pass through to speakers, causes some issue. I don't use AC3 because going to a windows or TV web browser AC3 or EC3 audio always triggers a transcoding and AAC doesn't. Why do you think your setup has AAC connection issues and my direct from server to TV has no issue? I don't think you read the post correctly, or maybe I wasn't clear. My TV is where the Emby client is installed - and while the TV can play it out of its own speakers, it cannot (and does not) send AAC downstream to the receiver (or soundbar, or anything else). It converts the audio to PCM 2.0 and sends THAT to the receiver. The TV is silent (tv speakers are all junk - even on a $4k tv like the X95J was when it was new). IF I had installed emby onto a Roku or Nvidia shield and connected that directly to the receiver, you would be correct - but in this case, the TV IS the source, and it passes audio via ARC or TOSLINK (I've tried both) to the receiver, and TVs do not ever pass AAC in any form. Most TV's don't have passthru at all - it's part of why Sony Bravia's have been considered industry-leading for the last couple decades. You can google the specs and reasons why, but it's a hard & fast reality. TL;DR I don't use TV speakers - ever. Edited 21 hours ago by Goros typo
visproduction 369 Posted 2 hours ago Posted 2 hours ago Ah, yes that's tricky. Would it be nice to bing he audio first into an AV amp and then the Amp sends it to speakers and avoid the TV for any audio? AV amps can often forward the video via HDMI to the TV. The AV amp can also send the center channel to the TV if you don't have a center speaker. There is a HDMI splitter available that can split the audio out onto a second HDMI output as well. New AV amps are pricy but there are many out there open box or used that migh be able to do this. I have seen such amps below $50 in Goodwill shops, which is amazing. I think using an AV Amp or Preamp is a nice solution. The only side effect is after I connect everything, I have an urge go fix some spaghetti and meatballs.
Goros 2 Posted 50 minutes ago Author Posted 50 minutes ago The bigger issue is that HDMI doesn't ever carry AAC anyway - your PC/Server, Nvidia Shield, Roku, etc all convert it to multichannel PCM and send it over the HDMI that way, but TV's - because they don't have the processing power and Arc & TOSLINK don't have the bandwidth - will always turn it into PCM 2.0. Doing what you're suggesting is possible, but then you're dealing with input lag and having to adjust the signal timings for lip sync, which change based on the source and type of container. I used to do this with emby installed on my nvidia shield pro connected to the receiver and then the receiver sends the video to the tv, but you lose a mess of features and ease of use for just having everything on the TV directly. The other reason for buying the Sony Bravia series TV's is the best-in-class built in 4k upscaling (the Cognitive XR processor) that it does on the apps while you're watching - so regardless of if it's emby, netflix, or OTA, the TV upscales without having to do a thing - it's actually more powerful than the Shield TV Pro 2019 and easier to use. Since KODI for emby already HAS the option to force convert to AC3 (which forces the emby server to do the work), there's nothing keeping emby from implementing it in full in their native app, except for not wanting to do the coding. emby already HAS it built in, but it only converts to AC3 if the device emby is installed on does not handle AAC natively - which all TVs have done for over a decade now. The trick is getting a toggle to force it 24/7 every time it sees an AAC container. I'm sure my use case isn't rare, as all tv's turn AAC into pcm 2.0 natively when feeding into a soundbar or receiver, and you know that people are installing emby on TV's instead of on streaming boxes or sticks - if Emby wants people to use their app instead of Kodi or Jellyfin, they really need to cater to those of us who want the audio passed in the best way possible. 1
visproduction 369 Posted 34 minutes ago Posted 34 minutes ago Goros, Thanks for those details. Hmm, so another way out would be to make sure all the media content is similar enough, or the same exact audio video, so users always get similar quality and timing for each media. That would take a lot of extra work. Hopefully, your info is useful to help make Emby better.
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now