DScaler -- Frequently Asked Questions

FAQ
Last update: September 7th 2001

#
Introduction

## Where can I find the latest FAQ ?

Here at http://www.dscaler.org/FAQ.htm

## What is DScaler ?

DScaler is a piece of software that grabs analog, interlaced video, and deinterlaces it to make it a progressive scan feed then allows scaling to any resolution for use on your computer monitor or projector.

Analog, interlaced video is what devices like VCRs, laserdisc, and game consoles output.

## What is so special about DScaler ?

Unlike most existing software for use with TV cards, DScaler implements sophisticated deinterlacing algorithms. Using such algorithms makes sure that each kind of video source is handled a different way. It provides the user with a level of image quality unknown to PC owners until now.

Some of the techniques are:

- video source deinterlacing
- inverse telecine detection: 2:2 (for pal movies) as well as 3:2 (for ntsc movies) pulldown
- Automatic aspect ratio control
- Judder elimination

The image quality resulting from those complex operations is high and allows some people equipped with data capable projectors to feed them with progressive scan images.

## What is dTV ?

dTV is the old name for DScaler, we changed the name as people use dTV to refer to digital television and this was causing confusion. In the source and on the website you will still see references to dTV but please refer to the program as DScaler from now on.

## History of DScaler

The whole thing started in July 2000. See Cliff Watson's post regarding the home theater computer history in "Who are the pioneers of htpc ?". Ali, one of the first French htpc addicts, was promoting a piece of software called BorgTV (aka bTV) that allowed him to deinterlace analog sources with a level of quality unknown at this time. Thanks to threads like " Not so bad analog video deinterlacing with htpc", people got interested in the subject. Among them was John Adcock.

He released a plugin for bTV that was doing realtime 2:2 pulldown for PAL movies that showed that deinterlacing of such sources was feasable in software (see " John Adock's great PALMovie plugin").

The lack of NTSC support in bTV made the implementation of the more complex 3:2 pulldown algorithm lead John to write his own application based on Multidec. Its name, based on its inspiration application, was dTV (see " First Version of NTSC/PAL TV deinterlacing program").

The first versions only had manual film pulldown selction. The next major breakthrough was when John implemented Mark Rejhon's 3:2 pulldown algorithm.

This proved that complex deinterlacing techniques could be done in realtime and without additionnal dedicated hardware. Since this time, more and more users (and coders) have joined the dTV community and are using it on their htpc rather than using external line doublers.

In may 2001, dTV got renamed to DScaler to avoid any misunderstanding with the growing Digital TeleVision issue.

See Authors for the main contributors and Thanks for a list of people who have helped make DScaler a success.

## How much does DScaler cost ?

DScaler is free software, open-source, coded under the GNU GPL Licence.

## What do I do if I want to pay for it ?

While the developers in no way oblige you to, we would suggest that you support Electronic Frontier Foundation by making a contribution here

We can't promise anything in return except to try to give a small preference to support requests, but you'll have our appreciation and know you've helped keep cyberspace free of barbed wire and bull***t.

## Can I ship DScaler with machines I make ?
Can I redistribute DScaler ?

DScaler is released under the GNU GPL and as such you are free to redistribute DScaler provided you agree to also distribute the source code. Note that simple linking to our site is not enough. Also it would be nice to hear from anybody who is shipping this product as we can add a link to your site and keep track of who is using our software.

## Where can I download DScaler?

Official releases are placed on DScaler's site, on the download page

From time to time the developers release alpha test versions, these version are often unstable but will have all the latest features. These versions are not recommended generally and are only supported via the developers mailing list. The test downloads can be found here

# General issues

## Should I use DScaler to deinterlace the output from my set-top dvd player ?

While it is feasible and works quite well (see the "DScaler Windvd challenge" in the screenshots section), home theatre PC's have shown the best results while using dvd decoding software along with a dvd-rom and a modern graphics card. However, there are people who find it easier to use with DScaler with an external DVD player.

Some people have found that DScaler does a better job with non-film DVDs (e.g. concert videos or DVDs of some television shows) and poorly coded DVDs (e.g. Anime) than the software players.

Note that most DVD players implement Macrovision copy controls, these can interfere with DScaler. For futher information see "What is the purple stripes issue ?" below

# Software issues

## Which operating system can I use DScaler on ?

Windows 95 ok uses VxD running in ring-0, may need ie 4.0 installed
Windows 98 ok uses VxD running in ring-0
Windows NT ?? may require hacked DirectX 5.0
Windows Me ok uses VxD running in ring-0
Windows 2000 ok uses sys running in ring-0
Windows XP ok uses sys running in ring-0
Linux no if you want to do a port contact us
OS/2 definitely no ;-)

## What are all those deinterlace algorithms ?

### Video Deinterlace (Bob)

This method is based on Gunnar Thalin's VirtualDub filter. If it detects weaving artifacts in the current image it uses bob to get rid of them. This method has a tendency to bob rather too much and gives poor results on fine static images.

### Video Deinterlace (Weave)

Similar to Video Deinterlace (Bob), however this method has a tendency to weave on moving images.

### Video Deinterlace (2-Frame)

This method uses the current frame and the last two to determine whether to bob or weave a given pixel. This gives better results on both stationary and moving images than the above two methods however it uses more CPU.

### Simple Weave

This method just combines the most recent even and odd fields. This causes motion artifacts and is provided for comparison.

### Simple Bob

This uses only the most recent field and fills the lines in between with interpolated pixels. This method has in may ways been superceded by Scaler BOB.

### Blended Clip

The BLENDED CLIP Deinterlace method is designed mostly for experimentation by those interested in what works for video deinterlacing. When it is selected it will pop up a control panel with many controls to adjust various parameters. These all correspond to Blc... parameters in the [Deinterlace] section of the DScaler.ini file and are documented there. It is probably not the single best method for anything but it can be used to create custom deinterlace methods for special purposes. These can be saved in a separate ini file and invoked by a command line parameter when starting DScaler.exe. Somewhat CPU intensive

### Scaler Bob

Uses the DirectDraw hardware bob feature (if available), this uses the current field and lets the video card scaler size the picture to fit the screen. Produces good results for fast moving images.

### Even Fields Only
Odd Fields Only

These use only one field out of each pair and use hardware scaling. This reduces bob artifacts at the cost of loss of information. These were originally intended to be used with game consoles.

### Adaptive Deinterlace

This method uses the amount of motion detected to select the best deinterlacing alogoritm. Currently by default it switches between 2-Frame and weave.

### Greedy deinterlace method

The GREEDY Deinterlace method is designed to give good results on low motion video source, using less CPU than some others. Good on slower machines but it will give awful results on high motion video material like sports. Quite by accident, it can also do a decent job on poorly mastered 3:2 or 2:2 pull down film source material like some anime movies, regardless of low or high motion. Try it if you have a movie source that is not giving good results with normal Auto Pull Down processing.

### Greedy 2 Frame method

This method tries to combine the best features of the 2-frame algorithm with the looking ahead ability of the greedy method. I find this methods works well on sports and other high motion material. With static images and low quality sources there may be unacceptable levels of bobbing.

### 3:2 Pulldown, Skip Field X

Mostly on NTSC format, on a 24-fps film material, the material is encoded as 48 fields (24 odd and 24 even). Each frame will be alternatingly played 3 and 2 times respectively. With regard to fields, the order played will be come: Odd, Even, Odd (of frame 1) and Even, Odd (of Frame 2), and so on. In order to create a pure progressive image (which is 1 frame of the 24-fps material), DScaler will only need to take the odd and even field, weaves them together, skip the next odd frame and wait until the next odd and even field arrives, weaves them together and put it out again. In the field sequence, out of every 5 field, 1 field can be skipped. That field that is skipped will be the number displayed on the pulldown Skip Field. If all the sequences are coming in as perfect as described, and DScaler detects it perfectly, the 3:2 pulldown method selected will always be set the same. If the PC is rather slow (dropping fields), or the sequence is altered (abruptly changing scenes), or DScaler's tolerance in comparison is exceeded, it will retry to lock again to the 3:2 pulldown, and might end up with a different field to skip.

### 2:2 Pulldown

PAL movies are made of sequences of 2:2 frames. Once such a sequence is detected, the Odd and Even fields are taken, weaved to form 1 frame of the 24-fps material, and displayed.

## Can I remote control DScaler ? YES

Yes you can. DScaler is being developped mainly by people using it as an analog source scaler for their projector and they prefer for sure using DScaler from their remote on the sofa rather than from their desk ;-)

DScaler is thus filled with keyboard shortcuts for all main options so that you can do everything quickly.

We also suggest the use of Girder from Ron Bessems as the application of choice for remote controlling your computer.

## Can I record video to my hard disk with DScaler?

Sort of. DScaler now handles basic recording and playback of specifically-formatted AVI files using a compression codec of your choice. The end goal being a "time shifting" feature (i.e. pausing of live TV) and not a generic video file processor. In other words, it handles only the video files that it creates itself for this purpose. This is all currently under construction.

DScaler isn't intended to be an all-in-one desktop video utility. The development team has chosen to concentrate on making it the best video processor it can be.

If you want to record video, there are lots of alternatives to choose from, such as:

- VirtualDub, an open-source desktop video application, can capture as well as edit and post-process video.
- ShowShifter for TiVo-like features such as an integrated program guide and pausing of live TV.
- AVI_IO is a video recording application that specializes in keeping audio locked to video even in the face of dropped frames.

Of course, if you want to improve DScaler's video recording, there's nothing stopping you! That's what open source is all about.

# Hardware issues

## Can I use any vga card as a display device ?

This is what Mark Rejhon has to say about this:

"DScaler requires an AGP card. It is impossible to do on a PCI video card. DScaler uses massive amounts of *bidirectional* bus bandwidth: 250 megabits per second incoming bandwidth (from TV card) and about 500 megabits per second outgoing bandwidth (to videocard). This bus data firehose is not feasible on PCI bus, as PCI can reliably continuously transfer up to about 600-700 megabits per second *in one direction only* out of a possible 1056 megabits per second (132 megabytes per second) due to overhead. Try to go bidirectional, and framerate literally gets the death penalty!"

However, some users ahve reported that they are able to use their PCI card successfully and without dropped frames. In some cases however, frame rate goes down when higher and higher resolutions are tried.

Ian Darian reported I have an 8MB 3dfusion PCI on a BX mobo Celeron 566 64MB RAM 66MHz FSB, with Dynalink Magic TView (Conexant 878) and can only execute DScaler at 16 bit colour depth. When running a 1024x768 desktop, DScaler v1.9 with a 720x576 @ 50Hz PAL composite input gives 0 DFS in manual Video De-interlace mode for DScaler window sizes up to 848x629 (as determined from DScaler.ini) but 7+ DFS for window sizes even 1 pixel above either of these dimensions

At a minimum the display card must support YUY2 overlays. All newer cards support this.

## Which capture card can I use ?

Almost any card (and that means A LOT) based of former Brooktree (now Conexant) chips including bt848/878/879 will work for video only. Why those ? These chips are easy to program (there has been A LOT of software based on those) and are very cheap. This means many manufacturers have (and are still) produced cards based on those chips.

Sound from the tuner is not always supported and adding this for a lot of cards is not a developement priority.

While we can't (and won't) claim "this card is the one you need", here are a few that have been sucessfully used by some users.

- Zoltrix Genie TV http://www.zoltrix-int.com/products/video/8MMZXGENIE.htm
- The WinTV series from Hauppage http://www.hauppage.com/html/products.htm
- Guillemot maxi video 3 http://fr.guillemot.com/brand/gamme/video/mtvvidp3/mtvvidpci3.html
- The Pinacle Studio PCTV http://www.pinnaclesys.com/ProductPage.asp?Product_ID=6

Take a look at the card list. This will never be complete so feel free to drop us an email reporting your experience with DScaler and your card. Also note that just because a card is on the list does not mean that it will work properly. Some features especially sound may not work correctly.

This list is originally based on the linux bttv driver on which the program was originally based.

## Can I use my existing <whatever> card's video input ?

Probably not. DScaler currently only supports the Brooktree/Conexant chipset (see previous question). Supporting others chipsets, while feasable, means some hard work and some solid knowledge of those chipsets. And unfortunately, no recent vga card with video-in feature includes Brooktree/Conexant chipset. Gx00, Asus Deluxe, ATI All-in-Wonder etc... are thus not supported for video input at the moment.

If you have some programming knowledge regarding the grab chipsets used in those card, you might want to help us. See the "How can I help" section.

## Can I use more than one video input ?

Not currently although it is a work in progress.

However, you can easily use your a/v receiver to switch between multiple video inputs. Connect the monitor out of your equipement to your grab card and all your video devices to video in connectors.

Also, some cards come with one, sometimes two composite input that you can use separately from within DScaler. An svideo connection is also quite common, allowing you to switch easily from 2 or 3 sources.

# Troubleshooting

## I have problems with sound?

Note that support for sound from cards internal tuners is not a priority for most of the developers of DScaler. Almost all the developers use some kind of external TV tuner and bypass the sound issue. Having said that we will be pleased to accept fixes for any card but are not in a position to add support for new cards ourselves.

## My picture jumps up and down?
I get dropped frames?

Both problems seem to be caused by not having a powerful enough machine to run everything all at the same time. The things that use up a lot of CPU time are 2-Frame, Blended Clip & Greedy deinterlacing and automatic pulldown detection. Try moving to another pulldown method or switching off autodetection. The other alternative is to buy a faster PC ;-))

There is now a setting in Select Hardware which allows you to tell DScaler how fast your PC is. Try selecting alower speed if you get either of these problems.

## What is this "purple stripes" issue ?

When feeding some analog sources to the combination grab card/DScaler, horizontal colored lines appear on the image.

See this picture where macrovision has been added to the video signal. The same video signal without the macrovision protection is perfectly stripes-free.

This phenomenom seems to be more visible when a macrovision protected video signal is fed to some grab cards but this has been reported (although less visibly) on unprotected material.

Other examples of this phenomenon can be seen here ;
avs:MacroVision side effect
avs:DScaler Purple Stripes - is this capture card dependent?

Some information from the Dvd Faq ;

"Macrovision adds a rapidly modulated colorburst signal ("Colorstripe") along with pulses in the vertical blanking signal ("AGC") to the composite video and s-video outputs. This confuses the synchronization and automatic-recording-level circuitry in 95% of consumer VCRs. Unfortunately, it can degrade the picture, especially with old or nonstandard equipment. Macrovision may show up as stripes of color, distortion, rolling, black & white picture, and dark/light cycling. Macrovision creates problems for many line doublers."

WARNING This has been reported only when feeding, for test purposes, a dvd player to the computer. Problems on other type of sources have yet to be shown.

So in common cases, you don't have to worry about this.

## Despite having a very powerful system, I still get some dropped frames?

Some people experienced some dropped frames (signs of a machine that has problems keeping up with the workload of DScaler) even on powerful systems. An hypothesis is that some motherboard agp speed issue might be the cause of such behavior.

JackB reported We looked at his BIOS settings and the only major difference is that his had a 4X AGP mode and my MB only has a 2X AGP mode. <snip> We put my video card, a GeForce2 MX, in his(slower supposedly)system and it ran 0 DFS. So it's not the MX throughput that's the problem. So, I'm down to it's my motherboard not being up to speed in either AGP acceleration or I have some settings set incorrectly

## I get "overlay update" errors

Sometimes you get this error message
`Error calling overlay update. D:/source/deinterlace/DScaler/other.c at line ???`
We don't have any full explanation of the problem but it happens when resizing DScaler or making it go from fullscreen to window mode. Also the color depth, frequency and size of the desktop might be related.

## What is the Crashlog.txt file, and where do I find it ?

If one of the developers asks you for a crashlog.txt file you should find this file in the DScaler install directory. This file contains useful information that can be used to find bugs more easily. If you can't find one when you've been asked for one don't worry just inform the developer that one was not created. Also if you have this file but are not observing problems then don't worry.

## I still have a problem?

See Support for how to get support for DScaler.

# How can I help ?

## Testing

More and more people are giving DScaler a try. Why don't you?
We'd like to know about your experience with it. What does (not) work? What can be improved, what features you would like. All feedback is useful.

Please report bugs on the AV Science Forum after checking (using the search feature) that the problem has not already been reported. Each bug report should include the hardware you're using, especially video card, grab card and processor type and speed.

## Coding

Any help is welcome. Despite including some very complex code, there are a lot of features in that are simple or that could be easily implemented without having to wade through all the assembler.

If you've got an idea, or feel like to trying to implement something that is already in the Tasks list, join the mailing list. Some information to get you started is on the developers page.