Configuring Analog Sound DVI to HDMI

From MythTV Official Wiki
Revision as of 17:57, 2 March 2009 by Ajm (talk | contribs)

Jump to: navigation, search

Firstly I tested the audio was working on my PC before even hooking to the TV and after hooking it to the TV I modified the xorg.conf to test that infact the sound would work by adding the following Option "UseEdid" "FALSE" in the Section "Screen" and opening Rythmbox then selecting a Radiostation to play - the resolution was jacked up but the sound played.

The first part was getting my TV EDID.bin, I did this by booting my computer (Ubuntu) on my TV going to Aplications>System Tools>Nvidia X Server Settings then to the section DFP-0 and clicking on the button "Acquire EDID", saved it and transferred that file to my Windows box.

I downloaded the application Monitor Asset Manager from ([1] - Windows only) launched that program and copied out the modelines for use in the my xorg.conf. I'm sure there are other ways but this was very simple.

   Modeline............... "1920x1080" 148.500 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync
   Modeline............... "1280x720" 74.250 1280 1390 1430 1650 720 725 730 750 +hsync +vsync
   Modeline............... "720x480" 27.000 720 736 798 858 480 489 495 525 -hsync -vsync

After acuiring the Modelines, I had to modify the EDID file itself and did this with a cool utility on this site ([2]) it's called edid_disable_exts. It actually did all the modification to the EDID file for me by simply feeding it the input and output file names (./edid_disable_exts [input_file] [output_file] ). The original file was 256bytes and the modified file was 128bytes if I remember correctly.

Once that file was created and saved back on Ubuntu in /etc/X11/ I needed to assemble my xorg.conf and needed to include the following which directs xorg to use the new EDID file I had just created.

Section "Device" Identifier "nVidia" Driver "nvidia" Option "CustomEDID" "DFP-0:/etc/X11/L2410NM-modified.edid" EndSection

Some important areas of xorg:

Section "Monitor" ... Vertrefresh 59.0-71.0 modeline "1920x1080" 148.500 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync modeline "1280x720" 74.250 1280 1390 1430 1650 720 725 730 750 +hsync +vsync modeline "720x480" 27.000 720 736 798 858 480 489 495 525 -hsync -vsync

Section "Device" ...

  1. This should point to the FIXED edid file as described on that webpage after fixing the edid file should
  2. be 128 bytes. Fix filename and path below accordingly.

Option "CustomEDID" "DFP-0:/etc/X11/edid_mod.bin"

Option "ModeValidation" "AllowNon60HzDFPModes, NoVESAModes, NoXServerModes Option "ExactModeTimingsDVI" "true" Option "DPI" "100x100"


Section "Screen" ... Option "ConnectedMonitor" "DFP"


My completed xorg:

# nvidia-xconfig: X configuration file generated by nvidia-xconfig
Section "ServerLayout"
Identifier "Layout0"
Screen 0 "Screen0" 0 0
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "Mouse0" "CorePointer"
EndSection
Section "Files"
EndSection
Section "Module"
Load "dbe"
Load "extmod"
Load "type1"
Load "freetype"
Load "glx"
EndSection
Section "InputDevice"
# generated from default
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/psaux"
Option "Emulate3Buttons" "no"
Option "ZAxisMapping" "4 5"
EndSection
Section "InputDevice"
# generated from default
Identifier "Keyboard0"
Driver "kbd"
EndSection
Section "Monitor"
Identifier "Monitor0"
Vendorname "Samsung"
Modelname "LN-T4665F"
Horizsync 30.0-70.0
Vertrefresh 59.0-71.0
modeline "1920x1080" 148.500 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync
modeline "1280x720" 74.250 1280 1390 1430 1650 720 725 730 750 +hsync +vsync
modeline "720x480" 27.000 720 736 798 858 480 489 495 525 -hsync -vsync
Gamma 1.0
EndSection
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
#This should point to the FIXED edid file as described on that webpage after fixing the edid file should
#be 128 bytes. Fix filename and path below accordingly.
Option "CustomEDID" "DFP-0:/etc/X11/edid_mod.bin"
Option "ModeValidation" "AllowNon60HzDFPModes, NoVESAModes, NoXServerModes
Option "ExactModeTimingsDVI" "true"
Option "DPI" "100x100"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Device0"
Monitor "Monitor0"
Defaultdepth 24
Option "UdeEDID" "False"
Option "RenderAccel" "true"
Option "DynamicTwinView" "False"
Option "TVOverScan" "0.00000"
Option "AllowGLXWithComposite" "true"
Option "NoLogo"
Option "XvmcUsesTextures" "false"
Option "UseEvents" "True"
Option "ConnectedMonitor" "DFP"
SubSection "Display"
Depth 24
Modes "1920x1080" "1280x720" "720x480"
EndSubSection
EndSection

A reboot loaded the new xorg.conf and the resolution was set correctly. I would suggest taking a look in xorg.log for any issues that might arise also that you turn off any "Visual Effects" System>Preferences>Appearance, this was important for me, YMMV.

I hope I didn't miss anything...