View unanswered posts    View active topics

All times are UTC - 6 hours





Post new topic Reply to topic  [ 1 post ] 
Print view Previous topic   Next topic  
Author Message
Search for:
PostPosted: Sat Aug 01, 2009 6:18 pm 
Offline
Joined: Fri Jun 23, 2006 10:57 am
Posts: 106
When using the current NVIDIA binary driver on R6, you can run into a audio problem. This problem can happen when:
    1 - Video is sent to the TV with a DVI->HDMI cable. Perhaps because you don't have an HDMI output on your video card.
    2 - Analog audio to the TV with an audio cable from the sound card.
Since the DVI->HDMI cannot carry the audio like an HDMI cable can, you must get the audio to the TV with a second cable. Most TVs have a way in their setup to use the audio from the second cable instead of expecting the audio from the HDMI.

Unfortunately, the NVIDIA driver is "telling" the TV that audio exists on the DVI->HDMI cable - which of course it CANNOT be possible. My TV (a Vizio) BELIEVES the driver and ignores the audio from the second cable even though in the TV setup I told it was connected from DVI and to get the analog audio from the other cable. So what happens is I get great video but no audio through the TV.

This is clearly a bug as the same TV and box work fine with an earlier version of the NVIDIA driver.

There is a solution that you can do but it is an ugly thing to have to do. This is a major hack and proceed with caution. This info is based upon postings:

http://www.nvnews.net/vbulletin/showthread.php?t=118691
http://www.nvnews.net/vbulletin/showthread.php?t=126648

Briefly the steps are:
    1 - Using nvidia-settings gui you can "acquire EDID" and write the information to a binary file.
    2 - Edit the binary file.
    3 - Use the edited EDID file when starting X.


See, it's ugly. Especially step #2. But I have done it and it works for me. Here is some detail:

Step 1 - This is easy. Start up X as you normally would. It is assumed you have X configured to your liking and everything works except for your audio. Run the nvidia-settings program. On the left side near the bottom you should see an item that defines your "display". On my list is says:

DFP-0 - (VIZIO L37 HD)

Click or highlight that and you will see on the right side of the GUI, an "Acquire EDID" button. Hit that and save the file (defaults to edid.bin).

Step 2 - Ok here it gets ugly. The idea is to get rid of some data. See the above links to postings that explain this a little bit more. The file is 256 bytes in size (in my case anyway) and we want to keep only the first 128. To do that:

Code:
prompt-> dd if=edid.bin of=edid.half ibs=1 obs=1 bs=128 count=1


You will end up with a file named edid.half that is 128 bytes in size. If this was all we had to do then it would be easy. But we have to edit the last two bytes in the file. To edit the binary file, I used "bvi". The "bvi" program was not on my R6 or R5 systems so I installed it on my Ubuntu system and finished the edit there. There are several "binary editors" out there, use what is easy for you.

The data we truncated is called the "Extension block". The second to last byte in the file maintains the size of the "Extension block" in bytes. Since we zapped the whole block this second to last byte needs to be set to zero. The last byte in the file is a checksum value and it needs to be incremented by one. To be honest I do not really understand why.

Step 3 - After you have the file add this entry to your /etc/X11/xorg.conf file in the device section.
Code:
Option "CustomEDID" "DFP-0:/path/to/edited/file"


If you have multiple screens, I assume the DFP-0 could be DFP-(some number). Just use here what you saw in the nvidia-settings GUI "display" value.

Hopefully they fix the bug soon or have a way we can easily configure it in the xorg.conf file. Doing it this way kind of sucks. :!:


Top
 Profile  
 

Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 1 post ] 


All times are UTC - 6 hours




Who is online

Users browsing this forum: No registered users and 14 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Group

Theme Created By ceyhansuyu