Go Back   nV News Forums > Linux Support Forums > NVIDIA Linux

Newegg Daily Deals

Reply
 
Thread Tools
Old 12-12-08, 03:28 AM   #1
toor
Registered User
 
Join Date: Dec 2008
Posts: 6
Default Problems with audio over HDMI on Apple TV

In short, I've got audio over HDMI working on Apple TV with NVidia 100.14.19 driver, but other driver versions (173.14.12, 177.80, 180.06) don't work. Sound works before X starts (even with nvidia module loaded). But after X starts with driver other than 100.14.19 , sound disappears. It seems to me that video driver in some way (control pins or interrupt) disables HDMI codec.
You can get more info at http://artem-astafyev.blogspot.com/2...-apple-tv.html.
Are any thoughts how to make audio work on newer drivers?
toor is offline   Reply With Quote
Old 12-17-08, 09:26 AM   #2
toor
Registered User
 
Join Date: Dec 2008
Posts: 6
Default Re: Problems with audio over HDMI on Apple TV

Some offtop: does anybody know if there are any plans to make VDPAU h264 support for 7xxx series?
toor is offline   Reply With Quote
Old 12-17-08, 11:54 AM   #3
Deanjo
Registered User
 
Join Date: Aug 2004
Posts: 301
Default Re: Problems with audio over HDMI on Apple TV

The 7xxx does not have the appropriate hardware to utilize vdpau. Hardware limitation.
Deanjo is offline   Reply With Quote
Old 12-18-08, 02:30 AM   #4
toor
Registered User
 
Join Date: Dec 2008
Posts: 6
Default Re: Problems with audio over HDMI on Apple TV

According to this document http://www.nvidia.com/docs/CP/11036/...Comparison.pdf 7xxx series have "H.264 Decode Acceleration" for both HD and SD content, but without IDCT and CAVLC/CABAC. Does it mean that only motion compensation for H.264 decoding is available in hardware?
toor is offline   Reply With Quote
Old 04-30-09, 08:01 PM   #5
wck555
Registered User
 
Join Date: Apr 2009
Posts: 9
Default Re: Problems with audio over HDMI on Apple TV

I can confirm that HMDI audio works on Apple TV with Ubuntu 8.10 and alsa driver version 1.0.19 as long as I use the open source nv video driver. However if I use the proprietary nvidia video driver, HDMI audio does not work. The problem with the nv driver is that it doesn't do 3D, so I can't use it.

As previously indicated, the Apple TV uses a SiI 1390 to drive the HDMI output:
http://www.anandtech.com/mac/showdoc.aspx?i=2951&p=6

This chip can interface with other audio devices using the HDA link (Intel High Definition Audio). The 1390 merges the audio from the HDA link with video stream. See block diagram in spec sheet:
http://www.siliconimage.com/docs/139...1368_FINAL.pdf

So presumably the Realtek ALC885 chip interfaces with the 1390 using the HDA link. The 1390 becomes another audio codec available to the HDA system. The nVidia GPU has nothing to do with audio. It just has to "stay out of the way". I am guessing when nVidia added HDMI audio support to their driver, they stopped "staying out of the way" and started messing with the HDMI audio settings. This is backed up by changes in /proc/asound/card0/codec#1. With the open source nv driver this file contains the lines:
Code:
...
Digital: Enabled
...
Amp-Out vals:  [0x00 0x00]
...
Pin-ctls: 0x40: OUT
...
With the nvidia driver those same lines read
Code:
...
Digital:
...
Amp-Out vals:  [0x80 0x80]
...
Pin-ctls: 0x00: OUT
...
(You'll have to look at the full file to see those lines in context). So is the nvidia driver disabling the HDMI audio output? Can it be prevented or undone after the driver loads?

Another interesting bit is that when HDMI audio is working, the analog audio input to the TV stops working. So the 1390 must be telling my TV to expect HDMI audio (this is a feature of the HDMI spec). The reason I mention this is that even if audio is coming out of the HDMI cable, the TV won't pay attention to it unless it's been told to use HDMI audio. So another possible complication is the nvidia driver could be telling the TV to ignore the HDMI audio.
wck555 is offline   Reply With Quote
Old 05-01-09, 06:29 PM   #6
wck555
Registered User
 
Join Date: Apr 2009
Posts: 9
Default Re: Problems with audio over HDMI on Apple TV

Looking more into when my TV listens to audio over HDMI versus the RCA jacks:

Test #1
- Configure X for nvidia driver.
- When I first boot the system, while the system is running in console mode, the TV ignores the audio signal over the RCA jacks. (presumably it's playing audio over the HMDI audio port but there's no way to test at this point)
- As soon at X starts and I see the nVidia logo, the TV starts playing audio signal from the RCA jacks. HDMI audio doesn't work.
- If I stop X (sudo /etc/init.d/gdm stop) the TV continues to play audio form the RCS jacks.

Test #2
- Configure X for nv driver and boot. No audio over RCA. HMDI audio works after X starts
- Restart X with nvidia driver. As soon as nVidia logo appears, TV starts playing audio over RCA. HDMI audio stops working.
- Stop X. TV still playing audio over RCA
- Reload alsa (alsa reload) and then examine /proc/asound/card0/codec#1, it has returned to the state I thought was supposed to be good:
Code:
...
Digital: Enabled
...
Amp-Out vals:  [0x00 0x00]
...
Pin-ctls: 0x40: OUT
...
but the TV is still playing audio from the RCA jacks and HDMI audio still doesn't work. Apparently the TV still remembers the last commanded state - playing audio over RCA. The codec#1 configuration doesn't seem to matter.

I think the solution may be to prevent the nvidia driver from telling the TV to play audio over the RCA jacks. By default the TV should play HDMI audio. I think this can be done using the nVidia UseEDID option in xorg.conf and then providing a custom EDID file for the driver.
wck555 is offline   Reply With Quote
Old 05-02-09, 04:09 PM   #7
wck555
Registered User
 
Join Date: Apr 2009
Posts: 9
Default Re: Problems with audio over HDMI on Apple TV

There are a lot of people having the exact opposite problem I am having. With the newer nVidia drivers people are complaining that their TV no longer plays audio over the RCA jacks:

http://www.nvnews.net/vbulletin/showthread.php?t=121161
http://www.nvnews.net/vbulletin/showthread.php?t=128507

Here's how it works. The audio data is embedded in the HDMI video stream, multiplexed with the video data. If the audio data is present, the TV will play that audio signal and disable the RCA inputs. If there is no audio data present, the TV falls back to the RCA inputs. There is no setting to tell the TV to listen to HDMI audio or RCA audio. If the HDMI audio data is present it will be used.

It also appears that by default the SiI 1390 chip embeds an HDMI audio signal (because my TV ignores audio from the RCA jacks during boot up). So all I need to do is figure out how to prevent the nVidia driver from disabling the embedded HDMI audio, or override the setting and re-enable HDMI audio after the nVidia driver loads.

It's strange the many people are having the opposite problem and are able to work around it by messing with the EDID. Makes me think there has got to be a solution.
wck555 is offline   Reply With Quote
Old 05-04-09, 11:33 AM   #8
wck555
Registered User
 
Join Date: Apr 2009
Posts: 9
Default Re: Problems with audio over HDMI on Apple TV

Another test further confirms that by default the SiI 1390 chip embeds audio data in the HDMI stream, but when nvidia driver starts, it disables the audio data.

Previously I was not able to switch between the nvidia driver and the nv driver without rebooting. Version 180.51 of the nvidia driver did something to the video configuration that the nv driver could not undo. However I got an older version of the nvidia driver (96.43.09) and now I am able to switch back and forth. Version 96.43.09 is a legacy nvidia driver updated with work with new Linux kernals. Here's the test:

- Configure X for nv driver and boot. No audio over RCA. HMDI audio works after X starts
- Restart X with nvidia driver. As soon as nVidia logo appears, TV starts playing audio over RCA. HDMI audio stops working.
- Stop X. TV still playing audio over RCA
- Reload alsa (alsa reload) and then examine /proc/asound/card0/codec#1, it has returned to the "good" state (Digital: Enabled, etc). Audio still coming over RCA
- Restart X with nv driver. Audio still playing over RCA. HDMI audio does not work.

I was surprised the nvidia driver 96.43.09 disabled HDMI audio. I thought HDMI audio would work with older nvidia drivers. I am not able to run version 100.14.19 on my kernal (Ubuntu 8.10 - kernel 2.6.27-11-generic). So I cannot confirm HDMI audio works with 100.14.19 as other people have observed.

Once again it comes down to the SiI 1390 chip. I either need to prevent nvidia from messing with the 1390 or restore the 1390 to it's default state after the nvidia driver starts.

There's a whole class of undocumented nvidia settings (ex: Option "RegistryDwords" "RMDisableRenderToSysmem=1") that could hold a key to doing this. I would love to find a source of information on these settings.
wck555 is offline   Reply With Quote

Old 05-05-09, 03:26 AM   #9
toor
Registered User
 
Join Date: Dec 2008
Posts: 6
Default Re: Problems with audio over HDMI on Apple TV

I think the only solution for now is to try custom EDID. Even that 100.14.19 driver works, if I power up AppleTV with TV turned off, I have no HDMI audio. That's because the driver can't read EDID. Many people complained that nvidia driver sends fake HDMI audio even when no audio available over HDMI, so TV uses HDMI audio input instead of analog. So I think in some release NVidia has added some check to decide whether to mute HDMI audio.
Are there any NVidia's people reading this thread that can tell how this check works and can we control it?
toor is offline   Reply With Quote
Old 05-05-09, 12:43 PM   #10
wck555
Registered User
 
Join Date: Apr 2009
Posts: 9
Default Re: Problems with audio over HDMI on Apple TV

I have disabled the EDID check using the xorg.conf option
Code:
    Option         "UseEDID" "FALSE"
This didn't help. HDMI audio still doesn't work. However I can now boot the AppleTV when the TV is turned off. There is more information on disabling EDID and forcing the nvidia driver to use a specific mode here:

http://ubuntuforums.org/showthread.php?t=913224

Quote:
Originally Posted by toor View Post
I think the only solution for now is to try custom EDID. Even that 100.14.19 driver works, if I power up AppleTV with TV turned off, I have no HDMI audio. That's because the driver can't read EDID. Many people complained that nvidia driver sends fake HDMI audio even when no audio available over HDMI, so TV uses HDMI audio input instead of analog. So I think in some release NVidia has added some check to decide whether to mute HDMI audio.
wck555 is offline   Reply With Quote
Old 05-06-09, 02:24 AM   #11
toor
Registered User
 
Join Date: Dec 2008
Posts: 6
Default Re: Problems with audio over HDMI on Apple TV

I meant not to disable EDID usage, but using custom EDID. Below is some info from NVidia's readme about this option:
Code:
Option "CustomEDID" "string"

    This option forces the X driver to use the EDID specified in a file rather than the display's EDID. You may specify a semicolon separated list of display names and filename pairs. The display name is any of "CRT-0", "CRT-1", "DFP-0", "DFP-1", "TV-0", "TV-1", or one of the generic names "CRT", "DFP", "TV", which apply the EDID to all devices of the specified type. The file contains a raw EDID (e.g., a file generated by nvidia-settings).

    For example:

        Option "CustomEDID" "CRT-0:/tmp/edid1.bin; DFP-0:/tmp/edid2.bin"

    will assign the EDID from the file /tmp/edid1.bin to the display device CRT-0, and the EDID from the file /tmp/edid2.bin to the display device DFP-0. Note that a display device name must always be specified even if only one EDID is specified.

    Caution: Specifying an EDID that doesn't exactly match your display may damage your hardware, as it allows the driver to specify timings beyond the capabilities of your display. Use with care.
I'm not exactly sure, but by modifying EDID in some way we can make HDMI audio to work. But I may be wrong.
Anyway, until we know how nvidia driver decides whether to disable HDMI audio, all we can do is guessing.
toor is offline   Reply With Quote
Old 05-06-09, 11:04 AM   #12
wck555
Registered User
 
Join Date: Apr 2009
Posts: 9
Default Re: Problems with audio over HDMI on Apple TV

Quote:
Originally Posted by toor View Post
I'm not exactly sure, but by modifying EDID in some way we can make HDMI audio to work. But I may be wrong.
Anyway, until we know how nvidia driver decides whether to disable HDMI audio, all we can do is guessing.
I thought about this. But my TV already reports that it can handle audio in the EDID data. Below is an excerpt from my TV's EDID parsed by "Monitor Asset Manager" - a windows program
Code:
CE audio data (formats supported)
  LPCM    2-channel, 16/20/24 bit depths at 32/44/48 kHz

CE speaker allocation data
  Channel configuration.... 2.0
  Front left/right......... Yes
  Front LFE................ No
  Front center............. No
  Rear left/right.......... No
  Rear center.............. No
  Front left/right center.. No
  Rear left/right center... No
  Rear LFE................. No
So I don't know what else I could add to the EDID data that would make the nvidia driver enable audio.

On another note, several people have reported that they can re-enable HDMI audio by dropping out of X and then reloading alsa. This does not work for me. Once the nvidia driver has loaded I have to reboot to re-enable HDMI audio. Does dropping out of X and reloading alsa work for you? If so what version of alsa, nvidia driver, and linux are you running? I am running Ubuntu 8.10 with alsa 1.0.19.
wck555 is offline   Reply With Quote
Reply


Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


Similar Threads
Thread Thread Starter Forum Replies Last Post
IOGEAR 3D Complete+ 4-Port HDMI Switcher with 2D/3D Video Processor News Archived News Items 0 06-28-12 05:40 PM
Upgrade from 290.10 to 295.49 on GeForce 8300 = no hdmi audio + overscan tbubel NVIDIA Linux 2 06-15-12 03:55 AM
No HDMI audio on 302.07 fldc NVIDIA Linux 5 06-01-12 04:46 PM
Apple says DoJ "sides with monopoly, rather than competition" News Archived News Items 0 05-24-12 11:30 AM
HDMI audio ELD weirdness RockHound NVIDIA Linux 0 05-11-12 03:45 AM

All times are GMT -5. The time now is 07:22 AM.


Powered by vBulletin® Version 3.7.1
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Copyright 1998 - 2014, nV News.