or Connect
AVS › AVS Forum › A/V Control & Automation › Tweaks and Do-It-Yourself › Modify the EDID of LCD TV to enable HDMI audio output
New Posts  All Forums:Forum Nav:

Modify the EDID of LCD TV to enable HDMI audio output

post #1 of 2
Thread Starter 
Background
I have a Soyo MT-SYTPT 4227ab LCD TV and a Toshiba Satellite A300 PSAG8C-048013 laptop (Windows 7).

When I connect them via HDMI, my laptop's HDMI audio device is specified as "not plugged in" and the TV does not output audio. When I connect my laptop to other TVs, my laptop's HDMI audio device specifies the name of the TV and the TV outputs audio.

I tried installing the latest video and audio drivers but the problem remains.

Previously my Xbox 360 also had this problem. I found this thread http://forums.xbox-scene.com/index.php?showtopic=631109 which describes a problem in which the Xbox 360 is not getting the proper handshake from the TV so it defaults to DVI output (no sound). I was able to disable display detection and my sound started working.

I also have a Patriot media box, which I tried with this TV, it outputs HDMI audio with no issue.

I booted into Ubuntu with a live CD and HDMI audio worked immediately.

My Theory
All of the above led me to believe my TV is not sending the proper HDMI handshake so Windows is not outputting audio through the HDMI port. I downloaded a program called MonInfo http://entechtaiwan.com/util/moninfo.shtm which gives detailed monitor information.

When I used it to check out my TV, sure enough, I found that my TV was not sending the EDID block specifying audio capability. See the differences in output between the Soyo TV and another TV.
soyo-moninfo.txt 3k .txt file
toshiba-moninfo.txt 5k .txt file

I did some research and found that people have been using this program to output INF files which they modify to enable HDMI audio.

Attempt
1. Used a program called APx500 to generate an EDID extension block with basic audio information.
2. Loaded this EDID into MonInfo and generated an INF file.
3. Copied the extension block from the generated INF file into my TV's INF file.
4. Updated the driver for the generic PnP monitor corresponding to my TV with the INF file.

I still cannot get HDMI audio to work! Can anyone help me out?

custom.inf.txt 3k .txt file
custom-moninfo.txt 4k .txt file

Thanks in advance.
post #2 of 2
Thread Starter 
Found a solution, just posting in case this information can help others.

I installed Ubuntu dual-boot to run some tests. I used the read-edid package to to read the TV's EDID and see if it was any different than what I was seeing with MonInfo on Windows. get-edid indicated that the second block of the EDID was invalid. I checked the XWindows log (/var/log/Xorg.0.log) and, sure enough, the full EDID (1st and 2nd blocks) was reported.

I saved the EDID from the log and booted into Windows. I opened MonInfo and began editing the hex it had for the Soyo TV. The first block matched exactly with the EDID I got from the log file, so I entered the entire second block by hand. When I got to the end, I noticed the checksum MonInfo had generated was different than what the TV was sending; this must've been the reason the second block wasn't being accepted.

Rather than create an EDID override INF file using MonInfo, I decided to attempt to reprogram the EDID EEPROM on the TV, a more permanent fix. I followed this guide https://sites.google.com/site/chrisbecke/home/edid-reprograming to set the checksum byte of the second EDID block on the EEPROM with Ubuntu.

After this, an HDMI device showed up under sound devices.
New Posts  All Forums:Forum Nav:
  Return Home
  Back to Forum: Tweaks and Do-It-Yourself
AVS › AVS Forum › A/V Control & Automation › Tweaks and Do-It-Yourself › Modify the EDID of LCD TV to enable HDMI audio output