Articles Technology Blog News Forum Company

Video Enhancer user's guide

Contents



Chapter 1: Introduction

Before you start

Video Enhancer is a program that allows you to increase resolution of video using Super Resolution method. Super Resolution is a smart video upsizing algorithm which uses information from neighbor frames to upsize current frame. It accumulates information, so the more sequential frames are processed, the better quality you get. If picture in your video doesn't change too fast, then information from several frames can be added to create a picture of a bigger size, revealing details which would otherwise remain hidden. No algorithms of ordinary image resize/resample can provide this quality just because there's not enough information in one frame.

Video Enhancer also allows you to use more than a hundred of VirtualDub filters to do everything you want with your video: deinterlacing, denoising, deblocking, color correction, deshaking, sharpening, visual effects etc. But unlike VirtualDub, in Video Enhancer all filters, coders and decoders work simultaneously in separate threads saving your time.

This tutorial will help you to benefit from every opportunity offered by Video Enhancer.

Registration

Video Enhancer is a try-before-you-buy program. You can use it free of charge for 30 days without functional limitations. In order to use it longer you must purchase it. Doing so you will receive a registration code which must be entered in registration dialog offered by Video Enhancer at start.

Definitions

Artefact - a visible defect in a digital photo or video picture

Codec - a third-party system component that compresses and/or decompresses data

Compression - lossy or lossless process of encoding information using fewer bits

Deblocking - correcting blocks in decoded video in order to improve visual quality and prediction performance by smoothing the sharp edges which can form between blocks when block coding techniques are used

Deinterlacing - converting interlaced video, like common analog television signals, into a non-interlaced form.

Denoising - removing noise from a video. Noise is an unwanted distortion of data, including false contouring appearance, wide horizontal noise strips typical for old VHS, film artifacts - dust or dirt; snow, multiple small dots etc.

Deshaking - removing shaking from a video (typical effect for home camera shooting).

DirectX (Microsoft DirectX) - a set of system components providing application programming interfaces (APIs) for handling tasks related to multimedia, especially game programming and video, on Microsoft platforms

Filter - a program component used to modify the content of video

Multithreading - parallel (simultaneous) execution of several pieces of program in different threads

Uprezzing - increasing video resolution

VirtualDub - a powerful video editing application with a collection of more than 100 video filters

System requirements

A Pentium Pro or higher, 64 MB of free RAM, Windows 98/2000/XP/2003/Vista, DirectX 9.

 

 


Chapter 2: Interface overview

Video Enhancer provides two modes of user interface: Simple and Advanced. Simple mode opens by default when Video Enhancer starts for the first time.

    Feature Simple Advanced
    Select input video file(s) + +
    Select output video file(s) to be created + +
    Select codec to be used for video and audio compression + +
    Preview input file + +
    Launch video file processing + +
    Preview output file + +
    Wizard + +
    Increase video resolution to any desired width and height + +
    Setting scale size to keep or edit aspect ratio while increasing resolution - +
    Create a sequence of filters to be applied to video one by one (including any number of Super Resolution steps) - +

Simple mode

VE Simple mode screenshot

1 Click to select input or output file
2 Click to select more than 1 input file
3 Click to select video (V) and audio (A) compressor from the list
4 Select variant which suits your needs best: either maximize quality of the output file but prepare to wait longer, or have a speedy processing with less impressive result
5 Set in pixels the frame size you want to obtain in output file(s)
6 Approach user's guide from Video Enhancer
7 Play the input file
8 Launch the wizard - an illustrated guide to quickly choose filters and clean your video
9 Purchase Video Enhancer
10 Switch to Advanced mode
11 Start video processing (be sure to set all parameters first)
12 Click to see fully processed video and compare with original without saving to disk


Advanced mode

VE Advanced mode screenshot

This table covers buttons which are NOT present in Simple mode:

1 Select a VirtualDub filter and add it to the processing sequence
2 Add Super Resolution to the sequence and configure it
3 Change settings of currently selected filter
4 Move selected filter up in the sequence to make it applied earlier
5 Move selected filter down in the sequence to make it applied later
6 Delete selected filter from the sequence
7 Switch to Simple mode

 

 

Visual appearance (skins)

Video Enhancer's visual appearance can be changed by right-clicking on the main window and selecting a new skin from the list:

VE choice of skins

 

  For power users who want to use Video Enhancer from shell scripts, it also provides a command line interface.

 

 


Chapter 3: Using Video Enhancer

Selecting input and output file(s)

  • Processing a single file:
  1. To select input file: Browse (next to "Input video file" box)>Select file>Open.
  1. To look through input file: the first video frame of selected file appears in the monitor area on the right. Just drag the pointer under monitor area to see other frames or press Play to start playing it from current position.

    VE: choose a single file in Simple mode

  1. Default output file: after input file was selected, the default output filename is original filename plus the word "new" preceded by a dash. For example, if your input file name is bora320.avi, than the default output file is bora320-new.avi.
  2. To set output file: Browse (next to "Output video file" box)>Fill "File name" box>Save. Or just edit filename in the box.
  • Processing several files:
  1. To add file: Many files>Add>Select file>Open>OK
  2. To delete file: Many files>Select file>Delete>OK
  3. To select several files: hold Ctrl on your keyboard while selecting.

VE: choosing several files to process

After the list of files was created, the "Input video file" box shows the first filename in your list plus number of other files selected:

VE: checking input files

The lower box indicates resolution and duration of the first file in your sequence. Click "Many files" to view and/or edit your list of files.

It is not recommended to apply sequence of filters to several files which differ in original resolution.

You can not edit output file names separately, all but the first one will be named by adding "-new" to the end.

 

 

Input and output formats

Video Enhancer reads any video file that can be played by Windows Media Player. By default this is AVI, WMV, MPEG and ASF files. To open MOV files (QuickTime), install "QuickTime Alternative" version 1.7. If you want to open RM and RMVB files (Real Media), install Real Alternative.

The output video is stored in AVI file. You can use any video codec to compress output video - any DirectShow, DMO and Video for Windows codecs. By default audio stream (if present) is stored to the output AVI without changes. But you can choose to recompress audio with any audio codec installed.

Super Resolution work modes

There are 2 super resolution work modes to choose from in Video Enhancer. Video Enhancer uses neighbor frames to upsize a current frame with maximum quality. This requires multiple calculations to be performed, so prepare for 95-100% CPU usage. The "better quality" mode is time consuming while delivering the best achievable output. The "better speed" mode saves your time and video is processed quicker with sacrifice in resulting quality. If you are not satisfied with output, than change to "Better quality" and click START.

  • In Simple mode

Check the desired mode in the main window:

VE Simple mode: setting super resolution work mode

  • In Advanced mode

Click SR button and select the mode by a mouse-click:

VE Advanced mode: setting super resolution work mode

 

 

Setting desired resolution

  • In Simple mode

This couldn't be easier: just set width and height in respective boxes of the main window.

VE: setting new resolution in Simple mode

Original width and height are indicated under input file name. You can specify desired size either in pixels or in percents of original. Type in % symbol to switch to percents. Delete it to switch back to pixels. See section "Scaling" below to master more complex uprezzing technique.

  • In Advanced mode
  1. Click SR button
  2. Set output size: use either pixels or percents. Type % symbol to specify size in percents of original. Delete % symbol to switch back to pixels.
  3. Set scaling parameters (see "Scaling" for details)
  4. Select qualitative or speedy mode (see "Super Resolution work modes")
  5. Click OK

 

 

Scaling

There are actually two frame sizes that Video Enhancer uses to resize your video: output width and height and actual frame size to scale to (see panda scheme on the screenshot below).

Suppose you have a video 320x240 lines and want to make it 720x480 (NTSC). If you just scale 320x240 to 720x480, the image will become wider, all circles will become ellipses and all people will look fat. Simply because 4:3 proportion (320x240) does not equal 3:2 proportion (720x480). In order to preserve aspect ratio and make video 480 lines high, output size must be 640x480 (to keep the same proportion 4:3).

But you wanted 720x480! In this case you just set output size to 720x480 and size for scaling to 640x480:

VE: setting super resolution configuration

Video Enhancer will scale your video to 640x480 and add black borders to right and left to make output width 720. Or, you can set scale size to 720x540 (still 4:3) and output size 720x480. Then Video Enhancer will scale your image to 720x540 and keep 480 center lines, cutting top and bottom. Of course, if you want to change aspect ratio (to make fat people look less fat, for example) you can set any values of width and height. If you do not like typing in pixels, use percents instead. Type % in width or height box to specify size in percents of original. Delete % to switch back.

In the Simple mode you enter just one size - output size. Video Enhancer preserves aspect ratio and scales your video to fit output size (no cutting) adding black borders if needed. In the Advanced mode you can set both sizes manually.

If you want to increase your video resolution more than 2-3 times, you will obtain better quality by using several steps of Super Resolution. Just add several SR steps to the filter sequence, each time doubling the video resolution, and setting desired resolution on the last step.

Choosing a video codec

1. What is a codec
To understand what a codec is you can read this Wikipedia article:
http://en.wikipedia.org/wiki/Codec
So, a codec is a piece of software that can encode and decode video. When it encodes video, it gets uncompressed video (sequence of images) on its input and outputs some data, usually much smaller in size. That's the main purpose of the codecs - make video size in bytes smaller. When it decodes video, it takes that compressed data and outputs sequence of uncompressed images.

Some video editing/playing software contains certain codecs built-in, but most software doesn't - it uses codecs made by third-party developers and separately installed in your system. The system usually provides some means to find installed codec and use it for compressing and decompressing data. Each codec knows how to compress data, how to decompress data created by itself (but not by other codecs), but codecs do not know how to store this data on disk.

When you write compressed video to disk, it's written in one of container formats such as AVI, MOV, MP4 or something else. Each container format describes how to save chunks of compressed data and information about it, for example a little code (i.e. FourCC) that signals about compression method. When this file is then read, that meta information about compression method is used to find a codec that will decompress the data. So, knowing how to read AVI files is not enough to decode the video - a proper codec is essential.

Some compression methods are described in some standards (like MPEG4, for example). So many different codecs may implement such compression algorithms and they are often interchangeable. For example, DivX and XviD are both implementations of MPEG4 compression method, so video compressed by one of them can be decompressed by another one or even a third codec that knows how to decompress MPEG4. But some codecs have their own unique compression methods and video compressed by such codec can be decompressed only by the same codec.

2. Lossy and lossless compression
The task of a video codec is to compress video so it takes less space on disk or downloads faster. This can be done in two ways: it can try to compress the video without losing any information at all - like zip compresses your files without changing them. Such compression is possible but it's quite limited - most lossless codecs provide small compression ratio, like 1:3. And you cannot control how big the result will be - it totally depends on the algorithm and the source video. But they guarantee that decompressed video is exactly the same as the source.

Another way is to allow losing some information. Most video codecs go this way, they throw out much of original information but in a way not very noticeable by the eye. In this case decompressed video is not the same as original - it's always of lower quality. But now you can control how much information will be thrown away and so control how large the result will be measured in bytes. Amount of bytes (or bits) per second of video is called bitrate. The more the bitrate is, the less information is lost, the better is quality. The lower bitrate, the lower quality. And remember that each time you compress video by a lossy codec, the quality gets worse.

3. What kind of codec to use
So when selecting a codec you need to decide first which kind to use - lossless or lossy. If you need just to temporary store video for further editing and you need to keep maximum quality, then a lossless codec is what you need.
If, otherwise, you need to create a file which will only be played but not edited, and you want it to fit in limited size (like CD or DVD), then you need a lossy codec.

4. Choosing a lossless codec
Lossless codecs differ by availability (some are Windows-only, some are free, some are commercial), by speed and by average compression ratio. Some codecs are very powerful in compressing the data, but unusably slow. Some are very quick but compress poorly. You can find a big and detailed comparison here:
http://compression.ru/video/codec_comparison/lossless_codecs_2007_en.html
Video Enhancer author's personal choice is Lagarith, it's quite fast and provides reasonable compression.

5. Choosing a lossy codec
Lossy codecs also differ by availability (some are Windows-only, some are free, some are commercial) and speed, but they also differ by quality/compression ratio. This means that every lossy codec can compress video to almost any given size, so the compression rate is the same. But video compressed to the same size by different codecs has different quality. And again, usually the better this quality/compression ratio is, the slower is the codec. Nowadays best quality/compression ratio is in H.264 implementations, but the speed is usually bad: they need a very powerful CPU to decompress (play) the video and huge amounts of time to compress it.
You can find big detailed comparison here:
http://compression.ru/video/codec_comparison/mpeg-4_avc_h264_2007_en.html

The next level is MPEG4 implementations, they provide a bit lower quality/compression ratio, but fast enough for modern PCs.
http://compression.ru/video/codec_comparison/mpeg-4_en.html

DivX and XviD are most commonly used (the first is commercial and the second is free) and they are our codecs of choice for lossy compression.

 

 

Wizard

This useful feature helps you to quickly diagnose which distortions your video file is subject to and it will choose some filters for you. Select an input file (Browse>Choose file) and follow Wizard's instructions checking the boxes as you analyze your file:

VE: use Wizard to diagnose your video for distortions

Wizard asks you to evidence interlacing, blocking and noise in your video. This will take a few seconds. Then, choose a new resolution for your video (see "Setting desired resolution" for more details):

VE: use Wizard to set new resolution for your video

After new parameters are entered, you can choose a video and audio compressors (read more in "Choosing a video codec").

Wizard will probably suggest you to switch to Advanced mode to apply denoising or deinterlacing or deblocking filters and clean your video. Just do so; Video Enhancer will create a filter sequence by itself.

Filtering your video (Advanced mode)

In the Advanced user interface mode you can create chains with any number of VirtualDub and Super Resolution filters to be applied to your video. It means you can filter your video before resizing, after resizing, between or even instead.

  1. Click VD FILTER
  2. Choose a filter from the list or click ADD to browse through your filters in your files (filter description is given in an area below)
  3. Click DOWNLOAD MORE to approach more than a hundred free VirtualDub filters at www.thedeemon.com
  4. Click OK when you have finished selection

VE: add filters to clean your video as you upsize

You can use about a hundred of VirtualDub filters to alter your video: deinterlace, denoise, deshake, do color correction, apply some visual effects and much more. If you have VirtualDub installed, then Video Enhancer will probably find your filters automatically. You can see list of filters that work in Video Enhancer at http://www.thedeemon.com/VideoEnhancer/filters.html.

To use a filter download it and unpack *.vdf file to "plugins" subfolder of the folder you installed Video Enhancer to. Usually it will be "c:\Program Files\Video Enhancer\plugins". When Video Enhancer looks for filters, it first looks at its own plugins folder, then searches for VirtualDub plugins folder and loads filters from there if something found.

You can change VirtualDub filter settings (configure) as desired when adding to the sequence and later by pressing CONFIGURE button. When you are happy with the settings, click OK in the filter configuration dialog box.

See filters you have chosen in Filters Sequence window

You can easily edit the filters sequence:

  1. To change filters order: select a filter to be moved and click MOVE UP and MOVE DOWN
  2. To delete filters from the sequence: click DELETE
  3. To add new filters: click VD FILTER

Multithreading

Unlike VirtualDub, in Video Enhancer all filters, coders and decoders work simultaneously in separate threads. For example, if you process your video with two filters, then at the time coder compresses the first frame second filter is already processing second frame, first filter is processing third frame and decoder decompresses fourth frame. Simple test with processing DV video with 3 filters and compressing it with XviD showed 1.9 times higher speed than VirtualDub on Dual Core AMD Opteron. Just check "Use multithreading" box to optimize parallel processing:

VE allows you to benefit from Multithreading

Preview

Preview option allows you to see the output video resulting from parameters you have set and compare it with original input file (without saving output file). It is recommended to always preview at least several seconds of output file before you start processing of a large video in order to avoid common mistakes (scaling-related, for instance).

VE: use preview option at least to ensure that you picked correct file!

  1. Browse>Select input file (or Many files>Select input file(s))
  2. Set Super resolution mode ("better quality" or "better speed")
  3. Set desired resolution for output file
  4. Set scaling parameters (available from Advanced mode only)
  5. Create filter chain (available from Advanced mode only)
  6. Click Preview.

Processing time

How long will it take to upsize your video and clean it with selected filters? There are a lot of parameters to influence the processing time, including original and final video resolution (width and height), available CPU usage, filter features, original file size etc. It is recommended to end CPU consuming tasks (check in Windows Task Manager>Processes) before you start processing a large file in order to speed up. Once you have set super resolution parameters and selected the filters, remaining and elapsed time are indicated while processing is in progress (in Preview mode as well). If you feel like changing the settings, just press STOP and modify the data accordingly.

Finally: uprezzing your video

  1. Select input file
  2. Set output file
  3. Choose video and audio compressor
  4. Select "better speed" or "better quality" super resolution work mode
  5. Set new resolution
  6. Set scaling parameters (Advanced mode only)
  7. Create sequence of filters (Advanced mode only)
  8. If you want multithreading, check it
  9. Preview output to control your settings
  10. Start processing by pressing START button

 

 

Command line interface

Starting from version 1.6 you can use Video Enhancer in batch files using its command line interface. Only super-resolution feature is accessible from command line, to use VirtualDub filters run it in GUI mode.

Parameters:

  1. -i infile - specify input file. Use double quotes (like "...") for filenames that include spaces.
  2. -o outfile - specify output file,
  3. -d width height - destination video size,
  4. -vc codec - set name for video codec. First codec which name includes substring you specify here will be used. So you don't need to specify full name of the codec. If this parameter is not set, uncompressed RGB32 video will be stored (huge size)!
  5. -ac codec - set name for audio codec. If this parameter is not set audio will be copied without recompression.
  6. -vlist - output list of video codecs that can be used. All output is written to text file ve.txt in same folder as VideoEnhancer.exe.
  7. -alist - output list of audio codecs.
  8. -fast - use fast mode of super-resolution. If this parameter is not set, a slower high quality mode will be used by default.
  9. -nomt - do not use multithreaded processing.

Examples:


A. Show all available codecs (output goes to ve.txt):

VideoEnhancer.exe -vlist -alist

B. Upsize a file "176.avi" to 640x480 and compress result with Huffyuv codec:

VideoEnhancer.exe -i 176.avi -o "Upsized 176.avi" -d 640 480 -vc Huff -fast

 

 


Chapter 4: Troubleshooting

XviD compression doesn't work.

In XviD version 1.1 to get it working one needed to change one option in Xvid's parameters (this needs to be done just once). When you choose Xvid for compression in Video Enhancer, press "Configure", then "Advanced options", "Debug" and switch off "Display encoding status". After you've done it once, Xvid will work in VE.

Can't load FLV video

To be able to work with FLV video you can install K Lite Codec Pack (full):
http://www.codecs.com/K_Lite_Codec_Pack_download.htm

When installing be sure you check the points regarding FLV, FLV1 and VP6 (install FLV Splitter and set ffdshow to decode FLV1 and VP6 video). In other points about DivX, XviD, MP3 etc it is recommended not to use ffdshow and use original codecs since ffdshow is not very stable.

Processing does not start

To get the problem solved you need to answer 3 questions:

1) Can VE play the file in the main window when you open your file?

If no, you seem to lack a codec for this kind of files. We recommend installing K-Lite Codec Pack (see link above). it contains necessary codecs to open 99% of files. When installing be sure you check the points regarding FLV, FLV1 and VP6 (install FLV Splitter and set ffdshow to decode FLV1 and VP6 video). In other points about DivX, XviD, MP3 etc we recommend not to use ffdshow and use original codecs since ffdshow is not very stable.

2) Can VE process your file in Preview mode?

Open your file in VE, choose what you want to do with it (e.g. resize with SR, process with some filters) and press Preview. If preview does not start and shows some errors, this means the problem is with the decoder compatibility. You can try installing different codec for this kind of files or report the problem, read below how to get more details.

If preview is ok, then next question:

3) Can VE process your file in normal mode - writing output to disk?

If processing doesn't start and shows some errors, then probably you chose a bad codec for compression, try selecting another one.

If processing doesn't start but doesn't show any errors either - just sits still, it means your codec wasn't configured properly, for example, see topics about XviD and DivX in the FAQ.

If you couldn't find the solution yourself, you can report the problem. Since there are dozens of different codecs and thousands combinations of their interactions, the more information you provide, the more chances to get it working:

Since version 1.9.1 Video Enhancer allows starting a program in debug mode in order to create a bug description. Open Video Enhancer folder in Program Files and start VideoEnhancerDebugMode. Then try to process your file as you wanted. At the same directory where you told it to write output file it will create a .txt file with the name of your output file which will contain list of components used in processing, including decoding and encoding codecs and all intermediate filters. Please provide contents of this file when reporting an error.

 

 

Frequently Asked Questions & Troubleshooting online

 

 

Visit Video Enhancer forum http://forum.thedeemon.com/ to suggest your ideas, ask your questions or learn more about video processing and Video Enhancer.