This guide is dedicated to all UK GAME employees.
Me: "Have you any proper scart cables?" Employee: "There's one included." Me: "That's a composite over scart converter." Employee: "They're all the same." Me: "No they're not, you see RGBs is not composite sync, and a scart can cary s-video, etc..." Employee: "They're all the same." Me: "Err... ok then."
SCART is a European standard for connecting audio-visual equipment together. Different methods of transmitting video such as composite, Y/C (S-video) and RGB are supported on the same cable. The RGB method of transmission is of particular interest as it uses Red, Green, Blue and Composite Sync pins, which is very close to the way signal is carried over a VGA cable, Red, Green, Blue, Horizontal Sync and Vertical Sync. This makes is possible to adapt a VGA output to drive a RGB-capable SCART television directly.
The RGB signals in VGA and the RGB signals found in a SCART connector are electrically compatible, but the sync signals aren't. In VGA the vertical sync and horizontal sync are carried on separate wires, but in SCART they are both combined into a composite sync signal carried along a single wire. You need to convert the component sync signals into a composite sync compatible with SCART. The red, green and blue signals can be connected through as-is.
Driving a TV directly has some advantages. The quality is superior to composite or S-video, and as the video card's TV encoder is completely bypassed, custom resolutions and refresh rates can be programmed. On the down side, this method can require some experimentation to get right.
- You get to fiddle with all the timings yourself by programming your VGA card (e.g. setting modelines in X), so you can set exactly how much overscan the picture has.
- One-to-one relationship between the lines - if you run your graphics card in 800x600 and then use the TV output, the card needs to scale the picture down (576 lines for PAL). So either some of the lines get blurred together or some of the lines don't get drawn at all. If you're really unlucky then the graphics card won't pay attention to interlacing and it'll blend some of the odd lines into even lines. If you drive the graphics card at the native PAL specification and feed the signal straight into the TV then you can guarantee that each even line in the framebuffer will match up with exactly one line in the even field on the screen and every odd line will match exactly one line in the odd field.
- VBI sync - your graphics card can tell the software when the vertical blanking interval has started so the software can synchronise video playback, etc with the TV so you don't get tearing.
- RGB output - graphics cards generally give you composite and S-Video outputs. If your TV will accept RGB then use it and get a better quality picture.
- A television with an RGB capable SCART socket. Just the presence of a SCART socket does not mean the television accepts RGB, as it will also accept a composite over SCART image. Check the manual, or try changing between Composite and RGB output on a SCART connected device to see if there is any change in image quality (the yellows will be noticeably more vibrant in RGB mode).
- A video card and drivers capable of supporting interlaced resolutions - some don't, notably early versions of the official nVidia drivers for Linux are broken and won't let you turn on interlacing.
- A video card capable of supporting a very low dot-clock frequency (14.76 MHz for PAL, 13.34 MHz for NTSC.)
- With Nvidia cards, you must tell your graphics card to use negative vsync and hsync polarities.
- You need to be able to tell your graphics card to use your own resolutions and timings - if you're running Windows you should try using Powerstrip. See below for suitable modelines.
- Some TVs need pin 16 of the SCART connector driven high (powered with 1 to 3V) to enable the input. You can check this by blocking pin 16 (with some electrical tape) on a seperate RGB device; if the output changes to composite or no image with pin 16 blocked, your TV needs 16 driven high. You could pull power from the keyboard connector, connect up a 1.5V battery, etc. Bob van Loosen has provided a circuit which derives the required voltage from the vsync pin.
One of the main components is a VGA male connector. Unless you want to solder individual wires to an unwired connector, you can make life easy on yourself by using a normal VGA cable, cutting it in half or off the end of an old monitor. If the latter, take the monitor apart before hand as the wires should be exposed inside and you can just snip them off the solder points so you don't have to worry about stripping them later. But presumably you have loads of those double male ended VGA cables lying around that came free with your LCD (and you used the DVI, didn't you?).
Whichever you use, the first thing you need to do is figure out which wires correspond with which pin; not an easy task as there's no standard colouring. If you cut one in half, start by just looking. You should see three larger cables with their own shields around the center, these may well be coloured red, green and blue, though you may find one or more coloured differently. Anyway, these are your RGB cables (pins 1, 2, 3 with grounds 6, 7, 8).
Now you need to find HSync, VSync and Sync Ground. If yours are anything like mine, you should have a bunch of four or five smaller cables to one side of the VGA cable, coloured something like brown, white, yellow, black, maybe red. You'll have to check for continuity to make sure, but if it's anything like mine then White will be HSync (pin 13), yellow (or a smaller white) VSync (pin 14), and black Sync Ground (pin 5/10).
But to make sure, you need to test them all for continuity. If you have a multimeter, great. If not, you can connect a couple wires to a battery then find an electrical device with a low amperage draw and try to power it through various pins on the VGA cable. I used a 40mm computer fan and 9V battery as I had a 9v connecter spare and the fan had nice small pointy wires to poke in to pins and other wires.
Anyway, once you're figured out what goes where, make a note and continue...
If you're planning on making any of the below cables then you should farmiliarise yourself with both the Scart pinout and VGA pinout, along with a good understanding of configuring xorg.conf under Linux (or use of Powerstrip under Windows).
These fall into two groups. Some Radeon video cards are capable of generating composite sync directly and therefore need only a simple cable connecting the pins together. All other cards require a small circuit to convert the horizontal/vertical sync into composite sync. You can tell the circuits apart by the fact that the more complex version will have at least one transistor.
As the ATI Radeon cards should be able to output composite sync directly, the cable is very simple and requires no more than a single resistor between two pins along with the correct wiring pinout. Matrox G and Millenium series cards are also capable of generating composite sync, so this cable works with them as-is.
An untested guide for this is available at http://ryoandr.free.fr/english.html , with the pinout being as below:
VGA SCART Function 1 15 Red 2 11 Green 3 7 Blue 6 13 Red ground 7 9 Green ground 8 5 Blue ground 9 8 AV Commutation (+5V) 9 16 RGB Commutation 10 17 Composite sync ground 13 20(19) Composite sync
A 75 Ohm resistor should connect pins 8 and 16 on the scart.
Note that the power from pin 9 to scart 8 is only needed for resolution mode switching (4:3 or 16:9) and probably isn't needed for most standard def TVs, and the resistor between 9 and 16 supposedly drops the 5v voltage to between 1V and 3V which is needed to enable RGB Scart mode on some TVs. In other words, you may only need to connect pin 9 to pin 16, or not even that if your TV can be manually switched between RGB and Composite input on the scart socket or if you use an alternate method of providing 1V - 3V on pin 16 (a 1.5v battery works wonders but isn't permanent...). If you are sure that your circuit is correct, but are still getting nothing but a blank screen, try providing the correct voltage to SCART pin 8, as some TVs require this.
Optionally you could connect VGA pin 13 to SCART pin 20 via a 75 Ohm resistor:
Depending on TV make and VGA buffers used, it could happen that the sync signal causes some reflections in the image. Connecting it via 75 Ohm (like the other video signals) removes this reflection.
The complicated one ;o) Most information below is taken directly from Steve Hall's guide at http://www.nexusuk.org/projects/vga2scart/ .
As Nvidia cards have no option for outputting a composite sync, you need to create a small circuit that combines both the Horizontal and Vertical sync from the VGA port in to a Composite sync for the Scart. The schematic for this circuit is below:
The components referenced in the schematic (R = Resistor, Q = Transistor) are:
Component Type R1 3.3 Kilohms (3k3) R2 1.2 Kilohms (1k2) R3 820 Ohms R4 68 Ohms Q1 BC548B
Note that most general purpose NPN transistors will work in place of Q1.
The vga to scart connections then needed are:
Function VGA Converter Scart (Male) Scart (Female) Red 1 15 15 Green 2 11 11 Blue 3 7 7 Red Ground 6 13 13 Green Ground 7 9 9 Blue Ground 8 5 5 VSync 14 VSync HSync 13 HSync Sync Ground 10 Gnd 17 17 CSync CSync 20 19
This circuit does no frequency conversion or scaling, etc. so your graphics card must output a signal at PAL or NTSC specification if your TV is going to have any chance of syncing with it. If you see 2 images side by side then your graphics card is outputting a standard VGA signal and your TV just happens to be syncing with every other sync pulse (the horizontal sync in VGA runs at exactly twice the frequency of PAL).
|Cards known to support interlaced resolutions and TV frequency dot clocks|
|Name||Interlacing?||<15 MHz dot clock?|
|nVidia GT240||YES||NO (X will accept modelines and start, but no picture)|
|nVidia 7800 GS||YES||?|
|nVidia 7600 GT||YES||YES|
|nVidia 7600 GS||YES||YES|
|nVidia 8500 GT||YES||?|
|nVidia FX 5200 series||YES †||YES|
|nVidia GeForce4 MX||YES||YES|
|nVidia GeForce 6200 TC||YES||YES|
|nVidia GeForce 2 MX 200||PROBLEMS||YES|
|ATI Radeon 9000||YES ‡||YES|
|ATI Radeon 9100 IGP||YES||YES|
|ATI Radeon X1250 IGP||YES ‡||YES|
|ATI HD3200 IGP||YES ‡||YES|
|ATI Radeon 8000 series|
|ATI Radeon 7500||YES||YES|
| ATI Radeon X300SE
(RV370 - Dell Optiplex GX280)
|ATI Rage 128VR (PCI)||YES||YES|
|Matrox G200 AGP||YES||YES|
| Matrox Millenium II PCI
|Via Unichrome IGP|
|Intel GMA950||YES ˆ||YES|
† requires use of nVidia's legacy drivers, for which XV handles interlacing incorrectly, so you need lots of grunt from the CPU. Doesn't work at all with nv or nouveau drivers as of Novemeber 2008.
‡ use radeon driver (not radeonhd or ati). As of Feb 2009 git master of the radeon driver is believed to support this mode of operation for all supported chips.
ˆ requires intel xserver patch in order to enable interlacing and low dot clock support.
X Windows needs to be configured to generate the signals at the right frequencies for your TV.
This is a working Interlaced PAL TV setup. The relevant sections of xorg.conf are below. Note the "composite" keyword which causes the Radeon to generate composite sync directly.
If you have managed to get a clear image on your TV, but are not able to get the full vertical resolution displayed, try reducing the vertical resolution without changing the total number of lines drawn (625 for PAL, 525 for NTSC). This could lead to a nonstandard resolution, but MythTV will use this without issue.
Set MythTV to use the "Interlaced x2" deinterlacer. That isn't truly a deinterlacer, but it is necessary to ensure that the two fields of each frame get sent in the correct order. Without it, you will find playback alternates between two modes, one perfect, and the other with motion showing combs and wildly jumping backwards and forwards.
You must also avoid using zooming or time stretch.
Here are some links to information on how to convert the VGA out signal to a suitable signal for a RGB Scart input.