Announcement

Collapse
No announcement yet.

Open-Source ATI Driver Gets TV-Out

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

  • #31
    Hi folks!

    I run Gutsy Gibbon and want to use the TV-out feature of the opensource radeon drivers with my radeon 8500 card. I have successfully compiled and installed drivers, but no matter what, I cannot get a sane picture on my TV. Also xrandr doesn't report that S-video is even connected.

    I have tried with GATOS drivers, they give a clear picture on the TV, but whenever I try to watch some video or run mythtv, my TV-screen turns completely green!

    I am all out of ideas what to try next. I have googled for hours without finding help on this.

    If you have any suggestions or clue, please help!

    Thanks in advance
    /w

    Comment


    • #32
      Originally posted by wildchild View Post
      Hi folks!

      I run Gutsy Gibbon and want to use the TV-out feature of the opensource radeon drivers with my radeon 8500 card. I have successfully compiled and installed drivers, but no matter what, I cannot get a sane picture on my TV. Also xrandr doesn't report that S-video is even connected.

      I have tried with GATOS drivers, they give a clear picture on the TV, but whenever I try to watch some video or run mythtv, my TV-screen turns completely green!

      I am all out of ideas what to try next. I have googled for hours without finding help on this.

      If you have any suggestions or clue, please help!

      Thanks in advance
      /w
      Well, I found a solution that worked. I removed the radeon card and literally broke it in 2 pieces, bought myself an nvidia-card. Now tv-out works as it should.

      Comment


      • #33
        Error

        When i use this line ./autogen.sh --prefix=/usr/

        I get this error

        ./configure: line 20660: syntax error near unexpected token `XINERAMA,'
        ./configure: line 20660: `XORG_DRIVER_CHECK_EXT(XINERAMA, xineramaproto)'

        Im using ubuntu 8.04 , an i installed the driver about two weeks ago and all whent fine then but now i reinstalled ubuntu and i get this error ....
        I installed and reinstalled all the stuf neded (automake libtool ... )
        Please help me

        Never mind seams to work with this error ... I don`t know how .... linux is so unpredictebel (sorry for the bad speling)
        Last edited by klarfuzzy; 05-12-2008, 12:36 PM.

        Comment


        • #34
          Originally posted by klarfuzzy View Post
          When i use this line ./autogen.sh --prefix=/usr/

          I get this error

          ./configure: line 20660: syntax error near unexpected token `XINERAMA,'
          ./configure: line 20660: `XORG_DRIVER_CHECK_EXT(XINERAMA, xineramaproto)'
          You need to install the xorg macros. I'm not sure what ubuntu package supplies them off hand. In general you need to install the xorg and xserver devel pacakges when building the drivers from git.

          Comment


          • #35
            First of all sorry for bringing back old topic but I really need to get TV-Out via S-video working on my AGP Radeon 9600 (RV350).
            I'm trying to enable S-video output for years...
            It was working before on Kubuntu 6.06 without problems but then in every(?) Kubuntu release after that it doesn't work.
            I've spent already few hours at some day between some months to get this working...

            3 days ago I've done it! And it was working even after reboot but the day after it stopped working and I've get it working yesterday, too but then after reboot it stopped working
            I'm doing everytime the same commands, I've checked every pin in the cable (even it's resistance - my S-video cable is 10M long), I've plugged the S-video cable from graphic card to TV card in the same computer to check if it's not the TV problem...

            I need pure PAL signal on S-video (no matter if the resolution of the display is 640x480, 800x600 or 1024x768) cloned from DVI-0. The problem is that xrandr gets the only working mode for S-video 800x600 with 59.9Hz rate (I think my TV needs 50Hz).

            I've written a simple script with commands to enable TV-Out:
            Code:
            #!/bin/bash
            xrandr --output DVI-0 --mode 800x600 #???
            xrandr --output S-video --set load_detection 1
            xrandr --output S-video --set tv_standard pal
            xrandr --newmode "800x600_50.00"  31.15  800 824 904 1008  600 601 604 618  -HSync +Vsync # get with "gtf 800 600 50"
            xrandr --addmode S-video 800x600_50.00
            xrandr --output S-video --mode 800x600_50.00
            xrandr --newmode "720x576_50.00"  26.57  720 736 808 896  576 577 580 593  -HSync +Vsync # "gtf 720 576 50" - cannot add it to S-video
            xrandr --newmode "768x576"     50.00  768  832  846 1000   576  590  595  630 # this modeline I've found on some forums, but I can't add it to S-video, too
            xrandr --output S-video --crtc 1
            #sudo atitvout -r detect # it's not needed anymore?
            #sudo atitvout -f t
            #sudo atitvout -r vbe
            And it was working 3 days ago - I've tested it ~10 times (even after reboot it worked) but it doesn't work anymore (even if I get the same "xrandr --verbose" and "xrandr --prop" output as before:
            Code:
            $ xrandr
            Screen 0: minimum 320 x 200, current 800 x 600, maximum 1280 x 1280
            VGA-0 disconnected (normal left inverted right x axis y axis)
            DVI-0 connected 800x600+0+0 (normal left inverted right x axis y axis) 330mm x 270mm
               1280x1024      60.0 +
               1024x768       60.0
               800x600        60.3*
               640x480        59.9
            S-video connected 800x600+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
               800x600        59.9 +
               800x600_50.00   50.0*
              720x576_50.00 (0x87)   26.6MHz
                    h: width   720 start  736 end  808 total  896 skew    0 clock   29.7KHz
                    v: height  576 start  577 end  580 total  593           clock   50.0Hz
              768x576 (0x88)   50.0MHz
                    h: width   768 start  832 end  846 total 1000 skew    0 clock   50.0KHz
                    v: height  576 start  590 end  595 total  630           clock   79.4Hz
            I've found that I could bind CRTC 0 to both VGA-0 and S-video before (if I've done the same modeline for VGA-0 and S-video) and now I can't but I've used CRTC 0 for VGA-0/DVI-0 and CRTC 1 for S-video.

            Logs from working S-video output (after running script):
            xrandr
            xrandr --prop
            xrandr --verbose

            Logs from not working S-video output (after running script):
            xrandr --verbose
            dmesg
            /var/log/Xorg.0.log (cut some redundant logs at the end for it's size)

            Too bad I don't have Xorg.0.log with working S-video.
            I've tried enabling PAL, PAL-60, PAL-M, NTSC standards on both video card and TV (input) card to check it (my TV (not TV card) supports only PAL) but even it could be set I had no proper display from TV card just something that looked like out of sync.

            It's important to me to enable cloned display on S-video as I've bought my daughter USB Dance Pad for it's 5-th birthday and I don't have space for it in the room where's PC.

            Edit:
            Distribution: Kubuntu 9.10
            $ uname -a
            Linux Wiolusia 2.6.31-15-generic #50-Ubuntu SMP Tue Nov 10 14:54:29 UTC 2009 i686 GNU/Linux

            Packages:
            linux-image-2.6.31-15-generic_2.6.31-15.50_i386
            xserver-xorg-video-ati_6.12.99+git20090929.7968e1fb-0ubuntu1_i386
            xserver-xorg-video-radeon_6.12.99+git20090929.7968e1fb-0ubuntu1_i386
            xserver-xorg_7.4+3ubuntu7_i386

            $ sudo lspci
            00:00.0 Host bridge: VIA Technologies, Inc. PT880 Ultra/PT894 Host Bridge
            00:00.1 Host bridge: VIA Technologies, Inc. PT894 Host Bridge
            00:00.2 Host bridge: VIA Technologies, Inc. PT894 Host Bridge
            00:00.3 Host bridge: VIA Technologies, Inc. PT890 Host Bridge
            00:00.4 Host bridge: VIA Technologies, Inc. PT894 Host Bridge
            00:00.5 PIC: VIA Technologies, Inc. PT894 I/O APIC Interrupt Controller
            00:00.7 Host bridge: VIA Technologies, Inc. PT894 Host Bridge
            00:01.0 PCI bridge: VIA Technologies, Inc. VT8237/VX700 PCI Bridge
            00:02.0 PCI bridge: VIA Technologies, Inc. PT890 PCI to PCI Bridge Controller
            00:09.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8169 Gigabit Ethernet (rev 10)
            00:0a.0 Multimedia video controller: Brooktree Corporation Bt878 Video Capture (rev 02)
            00:0a.1 Multimedia controller: Brooktree Corporation Bt878 Audio Capture (rev 02)
            00:0f.0 IDE interface: VIA Technologies, Inc. VIA VT6420 SATA RAID Controller (rev 80)
            00:0f.1 IDE interface: VIA Technologies, Inc. VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE (rev 06)
            00:10.0 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81)
            00:10.1 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81)
            00:10.2 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81)
            00:10.3 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81)
            00:10.4 USB Controller: VIA Technologies, Inc. USB 2.0 (rev 86)
            00:11.0 ISA bridge: VIA Technologies, Inc. VT8237 ISA bridge [KT600/K8T800/K8T890 South]
            00:11.5 Multimedia audio controller: VIA Technologies, Inc. VT8233/A/8235/8237 AC97 Audio Controller (rev 60)
            00:11.6 Communication controller: VIA Technologies, Inc. AC'97 Modem Controller (rev 80)
            00:12.0 Ethernet controller: VIA Technologies, Inc. VT6102 [Rhine-II] (rev 78)
            01:00.0 VGA compatible controller: ATI Technologies Inc RV350 AP [Radeon 9600]
            01:00.1 Display controller: ATI Technologies Inc RV350 AP [Radeon 9600] (Secondary)
            02:00.0 VGA compatible controller: ATI Technologies Inc RV370 5B60 [Radeon X300 (PCIE)]
            02:00.1 Display controller: ATI Technologies Inc RV370 [Radeon X300SE]

            (I'm using second graphic card - Radeon X300SE at PCI-E (my motherboard has both PCI-E and AGP slots) for dualseat - I'm running second Xorg for second graphic card and AGP Radeon 9600 is my primary card)
            Last edited by xeros; 11-17-2009, 12:26 PM.

            Comment


            • #36
              The modeline for tv-out is just a placeholder. The driver always outputs native timing for the selected TV standard (PAL, NTSC, etc.). "modes" with respect to TV only represent the size of the desktop downscaled to the native TV res. On your chip the only "mode" supported on tv-out is 800x600 at the moment (800x600 area of the desktop downscaled to pal resolution). The only thing you need to worry about is turning the output on. If load detection fails, you may have to manually add an 800x600 mode and manually turn the output on with xrandr. There are also driver options for your xorg.conf if you want to force tv-out to be always connected, to set the default tv standard, and to enable load detection on the tv dac by default. E.g.,
              Option "TVStandard" "pal"
              Option "ForceTVOut" "TRUE"
              Option "TVDACLoadDetect" "TRUE"
              in the device section of your config.
              To configure it with xrandr, assuming the driver detects the output as connected:
              xrandr --output S-video --auto
              or
              xrandr --output S-video --mode 800x600
              If load detection doesn't work, you'll have to force it on:
              xrandr --newmode 800x600 38.25 800 832 912 1024 600 603 607 624 -hsync +vsync
              xrandr --addmode S-video 800x600
              xrandr --output S-video --mode 800x600
              Again, the modeline timing doesn't matter as long as it's 800x600.
              Last edited by agd5f; 11-17-2009, 01:05 PM.

              Comment


              • #37
                I apreciate for yours suggestions but it didn't help.

                Now I'm getting 800x600 on DVI-0 even at KDM (I can change resolution by xrandr) and S-video is forced on but the display on S-video is as before but it looks like it sends "something" through S-video:


                It's picture taken from LCD monitor with tvtime getting S-video signal from TV card. The cards (Video and TV) are connected with (~50cm length) S-video <-> S-video cable (4 pin (luminecity and chromacity) + ground).
                The picture on TV is the same, but there is 10m lenght S-video <-> S-video cable connected to S-video <-> EURO(Scart) at TV side and it's connected to the Scart input which supports S-video in signal (I was having color PAL signal there from my Radeon 9600 card).

                Any thoughts?

                Edit:
                Maybe it worked because I've been trying many times to change TV standard, resolution, refresh... (even 'xrandr' commands in 'for i in `seq ...`' loop in bash to check if it's really changing something)?
                Both NTSC and PAL standards are changing but both are something like of of sync(?) like on the pictures above.
                Last edited by xeros; 11-17-2009, 02:59 PM.

                Comment


                • #38
                  Yes, it's the xrandr in the loop!
                  I've get by running:
                  Code:
                  for i in `seq 100`; do ./tvout-wlacz.sh; sleep 3; ./tvout-wylacz.sh; sleep 3; done
                  The "tvout-wlacz.sh" script is the one I've post here before for enabling tvout and "tvout-wylacz.sh" is for disabling load_detection and changing DVI-0 mode to 1280x1024 (my LCD native resolution):
                  Code:
                  #!/bin/bash
                  xrandr --output S-video --set load_detection 0
                  xrandr --output DVI-0 --mode 1280x1024
                  I've been running tvtime all the time loop was working. After few flickers I've get S-video output signal in tvtime window.

                  Edit:
                  Xorg.0.log.bz2 taken just after the S-video has put the right signal.
                  Does it look as the driver bug? How can I trace it? I've been even thought that the S-video card connector was broken but it's not - I've been switching cables and the signal is still there (on TV and TV card, too).

                  Edit2:
                  Now (as I have S-video signal) I can change resolution on DVI-0 and even change refresh on S-video (default 800x600 with 59.9Hz got just after set load_detection=1 works just like the manually inserted modeline for 50Hz).
                  Too bad, "dmesg", "Xorg.0.log" and "xrandr" doesn't say anything special when there's the proper S-video signal.

                  Edit3:
                  Just like before - S-video works even after reboot but if I turn off PC and switch off power then it doesn't work. Now after few hundred times the loop has worked before I've get proper S-video signal (loop with changing tv_standard, resolution, refresh rate, --auto, --same-as, and even --off) - it took ~35-40 minutes (with one reboot before next loop run).
                  I thought it might be a workaround for now but it seems it's not. There has to be something different.
                  Last edited by xeros; 11-17-2009, 04:40 PM.

                  Comment


                  • #39
                    If you are using a compositor like compiz does disabling it help?

                    Comment


                    • #40
                      No, it doesn't help either. I'm using KDE 4.3.3 with KWin desktop effects [OT: I'd like to say desktop effects on yours open source driver work a LOT better than in binary FGLRX driver before they dropped support for R300-R500 or even binary Nvidia drivers on other hardware - more FPS and less FPS drop on using effects] but it doesn't matter if it's enabled or disabled it's the same issue (I'm using shortcut ALT+Shift+F12 do enable or disable them).
                      I'm "enabling" S-video output by this workaround loop with xrandr commands separated by 1s sleep time and I get proper output after 30-60 minutes. After it gets proper output it's working even after reboot (by both using shutdown/reboot, ALT+SysRq[S,U,B], or even hardware reset switch) - it's not enabled at BIOS or boot time but just once enabling by xrandr it's working. The problem gets back after I cut of power to computer after shutdown (even for few seconds). Could it be driver or hardware problem?

                      Edit:
                      I thought about connecting S-video to the other card in my PC (Radeon X300SE PCI-E (RV370)) to check if it's software/driver problem but unfortunately it has only composite RCA output. If this test could be useful after all I could get a cable to connect it to TV card composite input.
                      Last edited by xeros; 11-20-2009, 02:16 AM.

                      Comment


                      • #41
                        The workaround for enabling S-video ouput works quite well (taking from few minuts to one hour of xrandr commands in the loop to enable it) but I've found now that it might be something with the 'ntsc' and 'pal' standards controlled by xrandr (or maybe other commands, too). My TV (28" Daewoo CRT) supports both NTSC and PAL and before yesterday I had PAL signal (with that workaround) but I couldn't get NTSC signal and from yesterday I might get NTSC but not PAL (when I do "xrandr --output S-video --set tv_standard ntsc"). The difference in video on TV is that before yesterday I've got black and white screen on AV2 option in TV and color screen on SVHS2 option (both options are for the same second Euro/Scart connection which supports S-video). From yesterday I've got proper color screen on both AV2 and SVHS2 TV options. Is there a way to check card enabled modes(?) other than xrandr? Maybe reading some registers? It all looks that driver thinks that card has enabled some mode for S-video but it really didn't do it.

                        Edit:
                        I've checked driver and kernel version but it didn't change from the ones I've post before.
                        Last edited by xeros; 12-03-2009, 03:40 PM.

                        Comment


                        • #42
                          I've done some more testing with xrandr commands and now I know my problem is connected to pal/ntsc tv_standard changing.

                          With commands (in script):
                          Code:
                          xrandr --output S-video --set load_detection 1
                          xrandr --output S-video --auto
                          xrandr --output S-video --mode 800x600
                          xrandr --output S-video --set tv_standard pal
                          xrandr --output S-video --crtc 1
                          xrandr --output S-video --same-as DVI-0
                          for i in `seq 1000`; do xrandr --output S-video --set tv_standard pal; xrandr --output S-video --set tv_standard ntsc; done
                          I get proper PAL signal after 2-3 minutes (tested 3 times with switching PC off/on and cutting the power between tests).
                          Of course I'm switching off my monitor for this because of these very quick mode changes (even on monitor) with changing TV standards.

                          Before that I've tried:
                          Code:
                          xrandr --output S-video --set load_detection 1
                          xrandr --output S-video --auto
                          xrandr --output S-video --mode 800x600
                          xrandr --output S-video --set tv_standard pal
                          for i in `seq 1000`
                          do
                                  xrandr --output S-video --set load_detection 1
                                  xrandr --output S-video --crtc 1
                                  xrandr --output S-video --same-as DVI-0
                                  sleep 1
                                  xrandr --output S-video --set load_detection 0
                                  sleep 1
                          
                          done
                          to check if I can get the proper S-video output without need of mode changes of my monitor (connected to DVI-0) in time when TV output is switching but that didn't worked (I've been waiting more than an hour - maybe 1:30h, and I've run it three times in that time).

                          What do you think about it? Is it a hardware error or driver bug? Does anyone here use S-video output from R300 card to confirm it?

                          Comment


                          • #43
                            Hi,

                            I tested your script and it worked for me at first. Thanks a lot . It is the first time i got an image on the S-Video. I have a R350, i think. Well it is the PC of a friend.

                            After 2 or 3 reboot, where it worked, it stopped working and i just get a disturbed image which is flickering and unreadable.

                            But it does work, when i am booting or shutdown the PC at usplash and the BIOS Screens.

                            Any news about this bug? Would be very nice, if this could work, because it is a HTPC.

                            I didnt tested fglrx. because there is no version for Ubuntu Karmic and R350, right?

                            Cheers

                            Manuel

                            Comment


                            • #44
                              I'm glad to hear that it worked for you and I'm not the only one who has such problem.

                              With this garbage on the screen take a look at the 'xrandr --output S-video --set tv_standard pal' and '... ntsc' commands. I would suggets you try both commands after you see 'something' on the TV screen.

                              I've got sometimes good PAL sometimes good NTSC S-video output but I haven't get both working (I didn't try to wait longer for both signals to work).
                              But now with that simple script I get allways any signal on my TV in less than 5 minutes (for me it's not a matter if it's NTSC or PAL).

                              But be carefull - I don't know if it wont damage your card, TV or monitor (driver/hardware gurus should tell if it's safe or not, I don't know). It's changing settings as fast as your computer can. I allways switch off monitor for the time I use this script.

                              Edit:
                              And about fglrx you're right - it wont work on ours cards in Karmic.

                              And for HTPC... I would suggest to make some changes to the script. If it could be possible to get somekind of signal if the TV output is OK or not it would be simple to make it work out of the box in Ubuntu starting sequence.
                              But for now I haven't found anything to check it from the software.
                              Btw. have you noticed that the TV output (colors. contrast, sharp image,...) is better in this open source driver than it was in fglrx before? :-)
                              If our problem could be traced at the software/driver side then driver developers could fix or make a workaround for our problem.
                              Last edited by xeros; 01-23-2010, 03:09 PM.

                              Comment


                              • #45
                                Well i didnt see the output with fglrx - just installed for my "windows" friend ubuntu.
                                I'll try ntsc and pal commands these days, see what it can help.

                                I have the script in the bootup sequence, but if it does not work reliably it doesnt help a lot.

                                Is there any chance that we track down the problem in the driver? I have no experience in driver hacking, but C/C++ knowledge, but i am short in time atm. Maybe when my exams are done in 1-2 months.

                                Kind regards
                                Manuel

                                Comment

                                Working...
                                X