David Engel wrote:
On Fri, Feb 25, 2005 at 08:20:51AM +1100, Nick Tan wrote:

I use an FX5200 without any deinterlacing and watching sports and fast moving stuff is just fine. In fact, I find that the picture quality is


When I tried using a GF4 MX a year and a half ago, it was terrible.
I've been meaning to try again to see if the bob deinterlacing or
newer nvidia drivers have improved anything.

You made a good choice at the time. However, things have changed drastically since then. The main issues are raster alignment and frame timing. At about the same time, I was considering a PVR-350 even though I hated the issues I had with a 250 (still do =).

I decided to look into the alignment problem. In a long afternoon
of divide and conquer, I found a magic overscan value that put a
480 pixel image in 480 scan lines for the 4xxx driver. Of course,
the overscan changed with the 6xxx drivers and are now controlled
by the "nvidia-settings" tool. If the overscan value is set to 250
(actually anywhere from 243-250) it is pretty darn close if not
exactly 480 pixels on 480 scan lines. This means that by not scaling
and with accurate frame timing, only data from one of the recoded
fields is displayed per field refresh.

For frame timing, Doug's OpenGL and RTC contributions make near
perfect timing possible. After hashing out problems to avoid the
'straddle' problem and a less heralded fix to do a better job
of deciding if a frame should draw ASAP or wait for the next
refresh if prepareFrame finishes less than a refresh cycle ahead,
there are virtually no flaws. Frame field misses are one or two
per minute or less making flaws just about imperceptible. This,
along with bob to cover any remaining flaws in scaling or timing
make motion indistinguishable from the original TV signal.

Would you mind sending your XF86Config?

Section "Module" #Load "GLcore" Load "bitmap" Load "dbe" Load "ddc" #Load "dri" Load "extmod" Load "freetype" Load "glx" Load "int10" Load "record" Load "speedo" Load "type1" Load "v4l" Load "vbe" EndSection

...

Section "Device"
       Identifier      "Generic Video Card"
       Driver          "nvidia"
       Option          "TVOverScan" "0.979"
       Option          "TVStandard" "NTSC-M"
       Option          "ConnectedMonitor" "TV"
       Option          "TVOutFormat" "SVIDEO"
       Option          "RenderAccel" "1"
       Option          "NoLogo" "true"
EndSection

...

Section "Screen"
...
       SubSection "Display"
               Depth           24
               Modes           "640x480" # "1024x768" 800x600
       EndSubSection

However, The important stuff is now controlled by "nvidia-settings"
which is installed along with NVIDIA-Linux-x86-1.0-6629-pkg1.run .
For raster alignment, set the overscan to 250. In myth, record at
Nx480, uncheck "Use GUI size for TV playback", And in TV Settings->
Playback Overscan set the horizontal percentage to 0.

In "nvidia-settings", set the flicker filter to 1, and sharpness to
about 6 to 8. Set "TV Saturation" to about 172 to 178. The last
one is important. I've found that both nVidia and ATI tvout tend
to bleed bright reds when the TV is set the same as for a TV signal.
The best solution I've found is to turn down the color on the TV set
to just below the point where reds pulsate, glow or bleed then turn
up this nvidia saturation control. Recording with higher sat would
distort the colors in the recording and the Xv saturation seems to
cause distortion also. However, the nvidia setting gives colors more
body without distortion until you are at a point where the colors are
cleanly overdriven.

One note, at 640x480 the Sharpness slider does not fit on the screen.
It can be adjusted blindly by tabbing to it or by editing the rc file. However, I'll save you the trouble and attach a .nvidia-settings-rc
file that you can put in you home dir.


-- bjm
#
# /home/bjm/.nvidia-settings-rc
#
# Configuration file for nvidia-settings - the NVIDIA X Server Settings utility
# Generated on Sat Feb 19 02:44:07 2005
#

# ConfigProperties:

ToolTips = Yes
DisplayStatusBar = Yes
SliderTextEntries = Yes
IncludeDisplayNameInConfigFile = No
ShowQuitDialog = Yes

# Attributes:

0/DigitalVibrance[TV-0]=0
0/ImageSharpening[TV-0]=8
0/SyncToVBlank=1
0/LogAniso=0
0/FSAA=0
0/TextureSharpen=0
0/ForceGenericCpu=0
0/CursorShadow=1
0/CursorShadowXOffset=4
0/CursorShadowYOffset=2
0/CursorShadowAlpha=64
0/CursorShadowRed=0
0/CursorShadowGreen=0
0/CursorShadowBlue=0
0/FSAAAppControlled=1
0/LogAnisoAppControlled=1
0/RedBrightness=-0.000000
0/GreenBrightness=-0.000000
0/BlueBrightness=-0.000000
0/RedContrast=0.000000
0/GreenContrast=0.000000
0/BlueContrast=0.000000
0/RedGamma=1.000000
0/GreenGamma=1.000000
0/BlueGamma=1.000000
0/TVOverScan[TV-0]=250
0/TVFlickerFilter[TV-0]=1
0/TVHue[TV-0]=0
0/TVSaturation[TV-0]=178
0/XVideoOverlaySaturation=4095
0/XVideoOverlayContrast=4095
0/XVideoOverlayBrightness=0
0/XVideoOverlayHue=0
0/XVideoTextureSyncToVBlank=1
0/XVideoBlitterSyncToVBlank=1
### BEGIN DEBCONF SECTION
# XF86Config-4 (XFree86 server configuration file) generated by dexconf, the
# Debian X Configuration tool, using values from the debconf database.
#
# Edit this file with caution, and see the XF86Config-4 manual page.
# (Type "man XF86Config-4" at the shell prompt.)
#
# If you want your changes to this file preserved by dexconf, only make changes
# before the "### BEGIN DEBCONF SECTION" line above, and/or after the
# "### END DEBCONF SECTION" line below.
#
# To change things within the debconf section, run the command:
#   dpkg-reconfigure xserver-xfree86
# as root.  Also see "How do I add custom sections to a dexconf-generated
# XF86Config or XF86Config-4 file?" in /usr/share/doc/xfree86-common/FAQ.gz.

Section "Files"
        # FontPath      "unix/:7100"                    # local font server
        # if the local font server has problems, we can fall back on these
        FontPath        "/usr/lib/X11/fonts/Type1"
        FontPath        "/usr/lib/X11/fonts/CID"
        FontPath        "/usr/lib/X11/fonts/Speedo"
        FontPath        "/usr/lib/X11/fonts/misc"
        FontPath        "/usr/lib/X11/fonts/cyrillic"
        FontPath        "/usr/lib/X11/fonts/75dpi"
        FontPath        "/usr/lib/X11/fonts/100dpi"
        FontPath        "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType"
EndSection

Section "Module"
        #Load   "GLcore"
        Load    "bitmap"
        Load    "dbe"
        Load    "ddc"
        #Load   "dri"
        Load    "extmod"
        Load    "freetype"
        Load    "glx"
        Load    "int10"
        Load    "record"
        Load    "speedo"
        Load    "type1"
        Load    "v4l"
        Load    "vbe"
EndSection

Section "InputDevice"
        Identifier      "Generic Keyboard"
        Driver          "keyboard"
        Option          "CoreKeyboard"
        Option          "XkbRules"      "xfree86"
        Option          "XkbModel"      "pc104"
        Option          "XkbLayout"     "us"
        #Option         "XkbOptions"    "ctrl:swapcaps"
EndSection

Section "InputDevice"
        Identifier      "Configured Mouse"
        Driver          "mouse"
        #Option         "CorePointer"
        Option          "SendCoreEvents"        "true"
        Option          "Device"                "/dev/psaux"
        Option          "Protocol"              "PS/2"
        Option          "Emulate3Buttons"       "true"
        #Option         "ZAxisMapping"          "4 5"
EndSection

Section "InputDevice"
        Identifier      "Generic Mouse"
        Driver          "mouse"
        Option          "CorePointer"
        Option          "SendCoreEvents"        "true"
        Option          "Device"                "/dev/ttyS0"
        Option          "Protocol"              "Microsoft"
        Option          "Emulate3Buttons"       "true"
        #Option         "ZAxisMapping"          "4 5"
EndSection

Section "Device"
        Identifier      "Generic Video Card"
        Driver          "nvidia"
        Option          "TVOverScan" "0.979"
        Option          "TVStandard" "NTSC-M"
        Option          "ConnectedMonitor" "TV"
        Option          "TVOutFormat" "SVIDEO"
        Option          "RenderAccel" "1"
        Option          "NoLogo" "true"
EndSection

Section "Monitor"
        Identifier      "Generic Monitor"
        HorizSync       30-50
        VertRefresh     60
        Option          "DPMS"
EndSection

Section "Screen"
        Identifier      "Default Screen"
        Device          "Generic Video Card"
        Monitor         "Generic Monitor"
        DefaultDepth    24
        SubSection "Display"
                Depth           1
                Modes           "800x600" "640x480"
        EndSubSection
        SubSection "Display"
                Depth           4
                Modes           "800x600" "640x480"
        EndSubSection
        SubSection "Display"
                Depth           8
                Modes           "800x600" "640x480"
        EndSubSection
        SubSection "Display"
                Depth           15
                Modes           "800x600" "640x480"
        EndSubSection
        SubSection "Display"
                Depth           16
                Modes           "800x600" "640x480"
        EndSubSection
        SubSection "Display"
                Depth           24
                Modes           "640x480" # "1024x768" 800x600
        EndSubSection
EndSection

Section "ServerLayout"
        Identifier      "Default Layout"
        Screen          "Default Screen"
        InputDevice     "Generic Keyboard"
        # InputDevice   "Configured Mouse"
        InputDevice     "Generic Mouse"
EndSection

Section "DRI"
        Mode    0666
EndSection

### END DEBCONF SECTION
_______________________________________________
mythtv-users mailing list
mythtv-users@mythtv.org
http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-users

Reply via email to