Announcement

Collapse
No announcement yet.

HDMI tearing and fontsize

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #11
    Hmmm... I didn't change anything from my xorg.conf except that I substituted the keyword radeonhd to radeon. It seems that the virtual didn't have any effect anymore (I think the radeon driver version is 6.12.1 (the one shipped with kubuntu 9.04)). The results are that I don't have overlay on my tv screen anymore. The resolution of my tv screen has decreased. It is now the same as my laptop screen (1440*900). I also lost my audio sound (which was expected). I forgot to say that the tearing still exists on the tv...
    Last edited by OrangeOne; 21 June 2009, 12:47 PM.

    Comment


    • #12
      Still no luck.

      What I tried so far:
      - try the radeon driver (see previous post)
      - play a video with no sound (-ao null in mplayer)
      - force the vsync in mplayer
      - Adapt my xorg.conf (added the option triplebuffer but the log says that it's not used)

      - Does anyone watch videos via HDMI (connected in 1080p mode)?
      - Why doesn't the xvattr command give me any detail except the port numbers? I would like to check the attributes that refer to the vsync...
      - What are the xorg.conf options that can be set to change anything linked to the vertical synchronisation?
      - Should i try to change the frequency (xrandr gives me 60hz)?
      - Does anyone know any FAQ on hdmi output (xorg.conf/radeonhd)?

      TIA

      Comment


      • #13
        My recollection was that only the radeon driver (not radeonhd) had xvattr attributes hooked up. The ones for radeon (from the man page) are :

        XV_VSYNC (defaults to on)
        XV_BICUBIC (defaults to auto, doesn't work with hue, contrast, brightness attributes)

        The text associated with XV_BICUBIC kind of implies that some standard attributes (Hue, Contrast, Brightess) are hooked up as well. These may also be hooked up with radeonhd, not sure.

        Sync to vblank should be on by default. If you are using an XRender-based compositor then vsync probably gets mucked up again unless you add Option "EXAVsync" "on".

        You mentioned radeonhd a couple of times; just to confirm, are you using radeon or radeonhd right now ?
        Test signature

        Comment


        • #14
          Sync to vblank should be on by default. If you are using an XRender-based compositor then vsync probably gets mucked up again unless you add Option "EXAVsync" "on".
          Just to be sure I added the lines

          Code:
          Section "Extensions"
                  Option  "Composite" "Disable"
          EndSection
          Nothing changed.

          You mentioned radeonhd a couple of times; just to confirm, are you using radeon or radeonhd right now ?
          I'm using radeonhd. You said that I should try the radeon driver to see if the tearing still existed with this driver. It was a test to check that the vsync wasn't screwed up because of the hdmi audio. I only tried the radeon driver once.

          Comment


          • #15
            Okay, I can confirm that is see basically the same problem regarding tearing when attaching an HDMI device. To sum things up:

            I have an AMD/ATI HD3850 in my box, use kernel 2.6.30, xorg server 1.6.2-rc2. I use a very recent git version of radeon (branch: master; some days old, commit ac4bd24a66c1bdda0293f770a3f891e2b88cc8ee). 2D acceleration as well as well as Xv do work nicely. No obvious/specific errors beside the classical "can't do 3d" (which is known since there is no 3D support for this card in the open drivers so far). As Desktop I use kde 4.2.4 with kwin for Desktop effects (XRender backend). My main display is running in 1920x1200@60Hz, my TV is running at 1920x1080@60Hz.

            When watching a video in fullscreen (kaffeine 1.0-pre1 with xine backend) I get no tearing on my main display, but I get tearing on the TV. The xrandr setting for the TV is:
            Code:
            xrandr --output DVI-0 --mode 1920x1080 --refresh 60.0 --pos 0x60
            Now to the interesting part, some bits from my xorg.conf (not everything, only stuff related to video/display stuff):
            Code:
            Section "ServerLayout"
            	Identifier     "X.org Configured"
            	Screen         "Screen0" 0 0
            	InputDevice    "Mouse0" "CorePointer"
            	InputDevice    "Keyboard0" "CoreKeyboard"
            EndSection
            
            Section "Module"
            	Load  "glx"
            	SubSection "extmod"
            		Option      "omit xfree86-dga"   # don't initialise the DGA extension
            	EndSubSection
            	Load  "record"
            	Load  "dbe"
            EndSection
            
            Section "Monitor"
            	DisplaySize 517   325	# mm
            	Identifier  "LCD-Desktop"
            	VendorName  "DEL"
            	ModelName   "DELL 2405FPW"
            	HorizSync   30.0 - 81.0
            	VertRefresh 56.0 - 76.0
            	Option      "DPMS"
            	Option      "Position"  "0 0"
            	Option      "PreferredMode"  "1920x1200" # Preferred resolution for the monitor
            EndSection
            
            Section "Monitor"
            	#DisplaySize 1600   900   #mm
            	Identifier  "LCD-TV"
            	VendorName  "SNY"
            	ModelName   "SONY TV XV"
            	HorizSync   14.0 - 70.0
            	VertRefresh 48.0 - 62.0
            	Option      "DPMS"
            	Option      "Position"  "0 60"
            	Option      "PreferredMode"  "1920x1080" # Preferred resolution for the monitor
            EndSection
            
            Section "Device"
            	Identifier  "Card0"
            	VendorName  "ATI Technologies Inc"
            	BoardName   "RV670PRO [Radeon HD 3850]"
            	BusID       "PCI:1:0:0"
            	Driver      "radeon"
            	Option      "AccelMethod" "EXA" # default shadowfb
            	Option      "DRI" "on"
            	Option      "EXAVSync" "on"
            	#XrandR 1.2 setup:
            	#radeon
            	Option      "monitor-DVI-1" "LCD-Desktop"
            	Option      "monitor-DVI-0" "LCD-TV"
            EndSection
            Section "Screen"
            	Identifier "Screen0"
            	Device     "Card0"
            	Monitor    "LCD-Desktop"
            	DefaultDepth     24
            	SubSection "Display"
            		Virtual 1920 1200
            	EndSubSection
            EndSection
            
            Section "DRI"
            	# Access to OpenGL ICD is allowed for all users:
            	Mode	0666
            EndSection
            
            Section "ServerFlags"
            	Option "AIGLX" "on"
            	Option "Xinerama" "off"
            	Option "BlankTime" "0" #do not turn display off...
            	Option "StandbyTime" "0" #do not turn display off...
            	Option "SuspendTime" "0" #do not turn display off...
            	Option "OffTime" "0" #do not turn display off...
            	Option "DontZap" "false" #allow ctrl+alt+backspace to shutdown >=xorg-server-1.6
            EndSection
            And since you won't believe that there is nothing really problematic in the logs unless I paste the stuff, here is some nice grep:
            Code:
            $ grep -e 'WW' -e 'EE' /var/log/Xorg.0.log
                    (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
            (WW) Open ACPI failed (/var/run/acpid.socket) (No such file or directory)
            (II) Loading extension MIT-SCREEN-SAVER
            (EE) Failed to load module "xtrap" (module does not exist, 0)
            (WW) RADEON(0): DRI init changed memory map, adjusting ...
            (WW) RADEON(0):   MC_FB_LOCATION  was: 0x00ef00d0 is: 0x00ef00d0
            (WW) RADEON(0):   MC_AGP_LOCATION was: 0x003f0000 is: 0x00030000
            (WW) RADEON(0): Option "Position" is not used
            (WW) RADEON(0): Option "PreferredMode" is not used
            (EE) AIGLX error: dlopen of /usr/lib64/dri/r600_dri.so failed (/usr/lib64/dri/r600_dri.so: cannot open shared object file: No such file or directory)
            (EE) AIGLX: reverting to software rendering
            So what do you think, is it a problem with the setup or is there some strange problem in the driver preventing vsync via hdmi from working?
            Last edited by ivanovic; 04 July 2009, 07:01 AM.

            Comment


            • #16
              Does the TV sync properly if you disable desktop effects ?

              I know there's been a fair amount of testing for Xv sync-to-vblank but don't know if any time has been spent on tear-free video playback through an EXA compositor.
              Test signature

              Comment


              • #17
                Originally posted by bridgman View Post
                Does the TV sync properly if you disable desktop effects ?

                I know there's been a fair amount of testing for Xv sync-to-vblank but don't know if any time has been spent on tear-free video playback through an EXA compositor.
                Tuning off Desktop effects makes no difference at all. Like I said, at exactly the same time the display connected via DVI is tear free, the one via HDMI (DVI->HDMI Adapter used) is not tear free.

                Comment


                • #18
                  radeonhd only supports anti-tearing features on crtc 0 at the moment, so if the output in question is being driven by crtc 1, it won't be enabled.
                  Only radeon supports both crtcs and the other Xv attributes. The anti-tearing features only work with non-composited desktops so if you are running desktop effects or compiz, etc. you may still get tearing. For radeon make sure you are using 6.12.2 or newer. For the additional Xv attributes (brightness, contrast, etc.), you'll need radeon from git master.

                  EXAVsync is also only implemented in radeon and only on r1xx-r5xx chips. It has no effect on r6xx or r7xx chips. Also, EXAVsync only affects EXA, not Xv.

                  Comment


                  • #19
                    Originally posted by ivanovic View Post
                    Tuning off Desktop effects makes no difference at all. Like I said, at exactly the same time the display connected via DVI is tear free, the one via HDMI (DVI->HDMI Adapter used) is not tear free.
                    If you are running in clone mode, (i.e, both outputs scanning out the same image or part of the image), you can only sync to one crtc or the other; not both.

                    Comment


                    • #20
                      Originally posted by agd5f View Post
                      radeonhd only supports anti-tearing features on crtc 0 at the moment, so if the output in question is being driven by crtc 1, it won't be enabled.
                      I only tested with radeon, not radeonhd since I heard that there was no tear free video in there so far.

                      Originally posted by agd5f View Post
                      Only radeon supports both crtcs and the other Xv attributes. The anti-tearing features only work with non-composited desktops so if you are running desktop effects or compiz, etc. you may still get tearing. For radeon make sure you are using 6.12.2 or newer. For the additional Xv attributes (brightness, contrast, etc.), you'll need radeon from git master.
                      After deactivating desktop effects (alt+shift+F12), Xv on the hdmi screen still tears and yeah, since I am using radeon right out of git-master (rebuilt it today, so am at current head) all stuff needed for tearfree video *should* be there, but it is not working. I have not changed any of the Xv attributes and xvattr shows that XV_VSYNC is set for all modes.

                      Originally posted by agd5f View Post
                      EXAVsync is also only implemented in radeon and only on r1xx-r5xx chips. It has no effect on r6xx or r7xx chips. Also, EXAVsync only affects EXA, not Xv.
                      Good to know.

                      Comment

                      Working...
                      X