hVCPlus 0.71 README

Contents:

License
What's hVCPlus?
The Authors
What's new?
Starting hVCPlus
The starting dialogs
Program options reference
Options for the command line
Settings for other, not BT compatible TV cards
Adding other BT compatible TV cards
Performance Monitor
Frequently asked questions (FAQ)
Known Bugs
Preview
Links
Credits
 

Most of this readme was translated in a hurry within three days. So it may not be guiding in gramatically exactness and spelling. :)


License.

1. General
YOU MAY ONLY USE THIS SOFTWARE FOR SCIENTIFIC PURPOSES.
WE ADVISE YOU TO USE THIS SOFTWARE ONLY FOR THE UNDERSTANDING OF THE BASIC PRINCIPLES OF THE ALGORITHMIC PROCESSES.
IT MAY BE ILLEGAL TO USE THIS SOFTWARE TO DECODE CHANNELS WITHOUT A REGULAR SUBSCRIPTION.
WE ARE NOT RESPONSIBLE FOR THE CORRECT FUNCTIONALITY OF THE PROGRAM AND THE RESULTING DIRECT OR INDIRECT CONSEQUENCES.

2. Use
This program is freeware. Using the program is free of charge.

3. Distribution
You may not sell the program or the source code, especially by auction. For selling on an disk or CD you may demand a fee for material and work. Before selling it, you have to point out that the fee is only for material and work. Auctions are not a fee for material or work. You may freely distribute the program at no charge, as long as no part of the program package is altered or removed. You may publicate the readme files in its unaltered form. The following files are part of the program package:

hVCPlus.exe
hVCPlus.ini
readme.htm
readme_en.htm
Hwio95.vxd
Hwiodrv.dll
Nthwio.sys
4. Source code.
You may use the source code freely. Programs, that are created by using the source code may be freely distributed, as long as they differ in some essential functionality from the original program and as long as there's a note in the program package, which describes, which parts are originally by hVCPlus. The publication of the source code is desirable but not mandatory.
 

What's hVCPlus?

hVCPlus stands for "Heuristic Videocrypt Decoder" and is a program for decoding Videocrypt I & II encrypted TV channels. To do this, the program analyzes the encrypted image information and trys to re-create the correct key to decode the picture.

System requirements:


The Authors

hVCPlus is based on the source code to MoreTV 2.83 by Feuerstein. Without this (not to underestimate) basic work, hVCPlus probably would not have been possible.

Until "Beta 4" (Aug. 99), hVCPlus was developed by viper_jk. After that, there were some modifications by no_operation. At the same time, viper_jk retired for a while.

Currently, the development of hVCPlus is done by no_operation.

Because there's still a lot to do on hVCPlus, other programmers are invited to help developing hVCPlus.
 

What's new?

Build 0.71.0

-PRNG decoder, v2, has a much higher detection rate.
-DelayLoop output. 0.6s delayed output of picture and sound, makes it possible to continuously use the PRNG decoder.
-Performance Monitoring for the PRNG decoder and the key detection.
-Fast menu navigation using CTRL-Left/Right

Build 0.70.1

Bugfix: Activate correct audio channel for tuner.
Bugfix: Negative numbers in dialog boxes re-enabled.
 

Build 0.70.0
PRNG decoding
The PRNG decoder tries to re-construct the state of the random number generator in the decoder. With this, for the first time, its possible to reconstruct the information a smart card would have sent to a real decoder. These informations are then used to decode the picture without errors. (Still no one knows how the smart card really works.)
Currently, you need a good decoding based on the normal decoder, or the PRNG decoder wont work. Under optimal conditions, the PRNG decoder can decode up to 2s without errors. After that a break of 1s is necessary to re-start.
Decoder, misc.
-Autodetect Mode: Detects Softcrypt, Videocrypt and unencrypted and activates the correct mode.
-Detection of missing TV signal, putting up a screen message.
-Quickstart & AutoOff-Timer: See command line documentation.
-Error messages instead of error codes for DirectX-errors.
-ColorFix3, just to be complete.
-Quick Color Fix (Q) - partially automatic color correction.
-Softcrypt: No need for the softvc.bin file any more.
-Softcrypt: More optimized. SoftVC Couples can be up to 287 now.
Tuner control
-"No Tuner"-mode. Does not initialize the tuner chip, but can switch between the 4 channels of the BT chip. For choosing the channel by an external program.
-Fine Tuning. Fine tunes the channel frequency.
Decoder, Block Split
-Extended Block Split. Second round in the block splitting algorithm by use of LowBlockLimit.
-BlockLazy only decreases line quality based on history. Should be better than last version.
-Split Blocks By ADL: (prev. Mark ADL Errors)
Only applied inside big blocks. Does not get inherited to the next frame by BlockLazy.
Output
-50fps-mode. Uses both half frames.
-Interlace-mode. Like 50fps-mode, but outputs to 720x576 or 360x576.
-MixColor Output.  Mixes (like PAL TV system) the colors of two lines.
Freeze/Capture/Debugging & Co.
-Shift+C saves the current frame to a file, in undecoded raw format.
-Shift+F re-loads a saved frame and decodes it inside the freeze buffer.
-Performance Monitor (o): High-precision speed measurement for different parts of the decoding process.
-DebugBorder: Extended output.


Starting hVCPlus

To install hVCPlus simply extract all files from the archive to a directory of your choice. After that choose one of these ways:

  1. Supported, BT compatible TV cards:

  2. Start hVCPlus. On the first dialog tab, you can choose a quality/speed profile. If you have more than one TV input card, choose the right video driver on the second tab.
    For sound support choose your TV card on the second tab. For channel switching choose the right tuner type.
    You have to set the correct TV channel afterstarting. See below.
  3. Not supported, BT compatible TV cards:

  4. The only way to activate the TV sound is to start your original TV application (like WINTV32.EXE, or sth. like that). Then start hVCPlus. Select the correct video driver on the second tab, if you have more than one. Select the correct tuner type. Leave the card type on No Card, this will prevent hVCPlus from switching the audio channel.
    Alternatively: Add your card to hVCPlus.ini, see below.
  5. BT compatible card, problems finding the TV channel:

  6. If the channel switching doesnt work for some reason, you can choose your TV channel by a different program. Set the channel using your original TV application, then select the tuner type "No Tuner" on the second tab. After starting hVCPlus, the last selected tuner channel should be available as EXT0.
  7. Not BT compatible TV cards:

  8. Currently, there's only a profile for Erazor III cards. After loading the profile, make sure, the correct video driver is selected on the second tab. There's no way to control the tuner or to activate the sound of your card. See also the section about other cards.
You can pop up a onscreen menu by pressing M. You can leave the program by pressing F10.

After the start, you can switch the channel with left/right (see menu). If the TV signal doesnt match exactly to a channel, you can correct that by adjusting finetune. By pressing CTRL-0-9 (numeric block), you can save the current channel, by pressing 0-9 (numeric block) you can restore the channel. Upon program start, channel 0 is loaded.

For optimum decoding quality, adjust the ColorFix1 value in the onscreen menu.
 

The starting  dialogs

Currently, there are four dialog pages.

On the first page you can see some program information. You can also load and save program profiles from here. The following profiles currently exist:

- Default
The program defaults. Automatically loaded on program launch, except if you specified a different profile on program launch.
-Default / DelayLoop
Like Default, but with deactivated DelayLoop output.
- 360 / Optimize Speed
- 360 / Average Speed/Q.
- 360 / Optimize Quality
- 720 / Optimize Speed
- 720 / Average Speed/Q.
- 720 / Optimize Quality
Different profiles with different quality/speed/resolution. "Speed" is optimized for high frame rates, "Average" is a mid-way, and "Quality" is for people with too much CPU power.
- CPU Challenge
- CPU Challenge Ultra
These profiles should push every CPU to its limits. The frame rates can go up to 50fps!
- Erazor III
This profile contains the necessary profiles for Erazor III cards.
- Video tape
With this profile it is possible to get some usable decoding from a video tape
These default settings are only a suggestion. There's a lot of things to experiment with!

On the second page there are several options for video input/output. For a description, see below.

On the third and fourth page there are options for the decoding process. You can change these options while the decoder is running by using the onscreen menu. For a description, see below.
 
 

Program options reference
 
Dialog option Onscreen-Menu Key Description
Load
Profile
    Loads a saved profile from the INI file. The profile is loaded as soon as a entry is selected.
Save As...     Stores all settings to the INI file for later reloading.
Capture
Res
    In this list, you can choose the desired TV capture resolution. Not all resolutions are supported by all TV cards. The resolutions 360x288 and 720x288 are especially good for decoding Videocrypt. 
Video
Driver
    In this list, you can choose the TV card driver, in case that you have more than one.
Flip Picture
vertically
    Flips the picture vertically to solve problems with some TV cards / drivers.
Brightness
Correction
  F12 Correct line brightness for viper_jk's old SAT receiver.
Line Mode     Sets the handling of half frames and full frames:

288 Lines - Compatibility: Captures only 288 lines. May be necessary for non-BT-cards up to 384x288 capture.

Force 576 Lines: Forces the driver to always capture full frames (576 lines), but only uses the first half frame for decoding. (Default)

Enable 50fps: Forces the driver to always capture 25 full frames /s, but decodes the second half frame only if there's enough time left. The half frames are displayed one after the other.

50fps Interlaced: Forces the driver to always capture 25 full frames/s and decodes always both half frames. The half frames are displayed alternately in even/odd lines. (Interlaced)

Optimize
for BT8xx
    Activates register-level optimizations for BT8xx based TV cards. This is necessary for best decoding quality.
TV card     For BT compatible cards, you can choose your TV card. This is needed to activate the sound output of your card. If you select a TV card, the correct tuner type gets automatically selected.

No Card: No special TV card. The sound input settings won't be accessed.

Miro PCTV/Hauppauge BT8x8: These card data is based on MoreTV 2.83.

Other Cards: These cards are, with friendly permission, imported from the BTW-Database. The sound access may not work in all cases completely.

Tuner type     Selects the tuner type for BT compatible cards, for channel switching on the antenna input. This option is automatically chosen by selecting a TV card.
If you select "No Tuner", you'll loose the capability to set a tuner channel. Instead of that you get an EXT0 input.
Output
mode
    Selects the output mode. You can choose windowed mode or the fullscreen resolution, and the color system (YUY2 Overlay or RGB Hi-Color).
Delay Loop
Output
  L Activates the output of picture and sound delayed by 0.6s. By this, the PRNG decoder can work continuously.
For this mode, the TV sound has to be routed through a sound card input, which has to be muted.
For this mode, a Full Duplex sound card is required.
      AudioSamples (in INI file)
Defines the sample rate for the audio loop.
Suggested: 11025, 22050, or 44100.
0 to disable the sound loop.
      AudioStereo (in INI file)
0: Audio loop is mono
1: Audio loop is sterteo
      Audio16Bit (in INI file)
0: Audio loop is 8 Bit
1: Audio loop is 16 Bit
      AudioHiTolerance / AudioLoTolerance (in INI file)
Defines, how much the delay time of the audio loop can differ from the needed 600ms.
Allowed is 600-AudioHiTolerance .. 600+AudioLoTolerance.
      AudioReverseInit (in INI file)
0: Normal audio initialisation: First play, then record.
1: Reverse audio initialisation: First record, then play.
May solve problems with Full Duplex.
Output
Compatibility
    Uses a more simple way for screen output. May help solving problems with some non-BT-cards. Former "Erazor-Mode"
Use vertical
sync
    Synchronizes the screen output with the screen refresh of the graphics card.
Show always
Statistics
    Permanently displays a status bar. In windowed mode, the status text appears in the title bar.
Decode
Mode
Menu right TAB, F2 Decode mode. You can choose between unencrypted, Videocrypt and Soft-Videocrypt. Currently, Channel 5 and TNT/Cartoon Network are Soft-Videocrypt encoded.
Auto Decoding/
Auto detect
decode mode
D Automatic detection of the current encryption method. In this mode, hVCPlus tries to detect the current encryption method and sets the appropriate decode mode by itself. The detection routines are optimized for low CPU utilization.
Softcrypt detection may not work on low frame rates.
    ESC Stop capturing
    F1 Restart capturing
By that, the capture-process is restarted. If the decoding suddenly gets slower or stops completely, it often helps to presss ESC,F1. The reason is usally bad reception or cable problems.
    F10 End program.
    M,
Shift-M
Show menu / status
Shows a menu with status information and key mappings, or the status line.
    Up/
Down
Choose menu option
Chooses the active menu component in the left half of the menu and changes the menu card.
    CTRL-
Left/
Right
Quick jump menu pages
Jumps directly to the previous/next menu card.
    Left/
Right
Change menu option
Changes the menu option choosen by up/down.
  Optimize BT/
Channel
  Choose current channel.
Selects a video input or chooses a TV channel at the tuner input.
Needs "Optimize for BT8xx" and the correct selection of the tuner type.
  Optimize BT/
Finetune
  Fine tune the TV channel.
Lets you fine tune the tuner channel frequency. The usual range is +/-50. Needs "Optimize for BT8xx" and the correct selection of the tuner type.
    0-9
numeric
block
Select saved channel
Selects a previously saved channel. Needs "Optimize for BT8xx" and the correct selection of the tuner type.
    CTRL 0-9
numeric
block
Select saved channel
Selects a previously saved channel. Needs "Optimize for BT8xx" and the correct selection of the tuner type.
  Optimize BT/
HScale
  Fine tune the screen width to the cutpoints. Needs "Optimize for BT8xx" and a capture resolution of 360x288 or 720x288.
  Optimize BT/
HDelay
  Fine tune the screen shift, if the unencrypted border gets into the decoding area. Needs "Optimize for BT8xx".
  Optimize BT/
Brightness
  Sets the screen brightness for the TV card. "Needs Optimize for BT8xx"
  Optimize BT/
Contrast
  Sets the screen contrast for the TV card. "Needs Optimize for BT8xx"
  Optimize BT/
Saturation
  Sets the color saturation for the TV card. "Needs Optimize for BT8xx"
Render Mode Decoding/
F6
F6 Chooses an output mode:

Color output: Shows the picture without the left border and with color reconstruction. The color is reconstructed from the cutpoints.

Color+Border output: Shows the picture with border and color.

MixColor output: Same as Color output, but mixes the color information of two lines to improve the color quality.

MixColor+Border output: Guess, what...

Black and White output: Shows the picture in Black&White and without border.

BW+Border output: Shows the picture in Black&White and with border.

Color+BlockDebug output: Shows the picture with color and uses the left border to show informations about the decoding quality and the block splitting:
Red: Possibly bad decoded line.
Green: Line, where the ADL correction was used.
White: A block of good decoded lines.

First Line,
Last Line
Decoding/
First Line,
Last Line
  Limits the decoding area. A smaller area can speed up decoding.
    Shift-F5 Choose format 20:9
    Shift-F6 Choose format 16:9
    Shift-F7 Choose format 4:3
Dec. Width Decoding/
Decode Width
  Sets the width of the decoding area. The default value of 986 means, that the decoding width is 98.6% of the capture width. For 720x288, this is 710 pixel (10 pixel border), for 360x288, this is 355 pixel (5 pixel border).
ColorFix1 Decoding/
ColorFix1
  Fine adjustment of the color constants. Some color constants seem to be hardware/TV channel dependant.

If the picture is jumping left-rigtht and gets 'blue' (means 180 degree color rotation), this value must be adjusted. This effect can be forced by setting the BC-value to 80:20. Usally, the rule is: Jumps to the left: decrease value, jumps to the rigtht: increase value.

The value in the brackets measures the correct value, but is only correct if the picture is decoded error-free for several seconds.

For experimens try using a Softcrypt-encoded TV channel, because the measure function is very good while decoding Softcrypt.

ColorFix2 Decoding/
ColorFix2
  Fine adjusts another color constant. In this case the measure function is not dependant of the decoding quality, so you just have to set the measured value.
ColorFix3 Decoding/
ColorFix3
  The third color constant. The color correlation (CC) depends on it. Usally you dont have to set this.
    Q Quick Color Fix. Automatically uses the detected values for color fixing. Only use on really good pictures!
PRNG 
reverse 
decoding
PRNG reverse 
decode mode
P Experimental, Pseudo-Random-Number-Generator based decoder. Tries to reconstruct the internal decoder state. If this mode works, the picture should be error-free, and there will be a key number shown in the status line. At best, this will work only for two seconds and will then stop for a second.
L2 Range Correlation/
L2 Search
Range
  Second of the three B&W decoding steps: Search range of the L2 decoder. The L1 decoder generates a result with a precision of +/- 16 pixels. L2 Range is the search range around that point.
L2 Stepwid. Correlation/
L2 Stepwidth
  Second of the three B&W decoding steps: Stepwidth of the L2 decoder. 1 results in a precise, but slow search. 5 is a fast search. Values bigger than 5 get slow again, because, as a result, the L3 decoder needs more time.
Color
Correlation
Correlation/
(F9)
F9 With this option you can activate the color correlation decoder.

No CC: Normal, classic decoding.

CC: Just color correlation. By that, the even and odd lines run apart, resulting in a double picture (comb-like errors). 

CC+ADL: Color correlation + ADL correction. (Alternating Differences List)
Searches for comb-like errors and trys to remove them.

CC+ADL+ReCC: Like CC+ADL, but does an additional line correlation after the border detection, to remove remaining errors.

Color Correl./
Color Boost
Correlation/
Color Boost
  Adjusts the mixing ratio for color correlation. 100:0 only uses color information, 0:100 only uses B&W information.
Color Correl./
Search Range
Correlation/
Color Correct
Range
  Determines the maximum search range for the color correlation.
Color Border
Detect
Border/SVC/
Border Detect
with Color
B Activates the color supported border detection.

Distribution / Off: Border detection by the distribution of the cutpoints

Color Match / On: Border detection with addititional color checks and Frame Correlation

Border
Boost
Border/SVC/
Border Boost
  Adjusts the mixing ratio for color border detection. 
100:0:0 searches the border only by color information.
0:100:0 searches the border only by cutpoint distribution statistics.
x:x:100 trys to set the border simillar to the last frame. (Frame Correlation)
Lines/
Block
Border/SVC/
Max. Lines/Blk
  Maximum number of lines for sampling the color information for the color border detection. (per block)
VC Couples Border/SVC/
SoftVC Couples
  Adjusts, how many lines are used for identifying the correct key for Softcrypt decoding. Even small values result in good decoding. Higher values keep the decoding stable even in difficult situations, but need more CPU power for that.
Key Offset Border/SVC/
SoftVC Key Offset
  Vertical alignment of the Softcrypt keys. For Non-BT-Cards, this value has to be adjusted to the TV card.
Block
Decoding
type
Block Mode/
Block Split
S Block splitting mode.

Single Block: No block splitting, the whole picture is one block, except for "Split Blocks By ADL".

Quality Block Split: Search for bad decodable lines. Does the border detection in blocks of good decoded lines separately.

Extended Block Split: On scenes with big bad blocks, this mode tries to recover some of these blocks, using low block limit.

Split Blocks
by ADL
Color Correl./
Split Blocks
by ADL
A Marks all changes done by the ADL correction filter as bad lines and does some additional block splits. On good decoding conditions, it can reduce decoding errors like distortions. On bad decoding conditions, it can also reduce the quality, because it creates too many blocks.
Block Limit Block Mode/
Block Limit
  Adjusts the sensitivity of the decoding error detection.
Determines, up to which quality value a line is considered as bad.
(Mainly detects errors that result in left-right jumps of parts of the image, like horizontal lines or text blocks.)
See also "Mark ADL Errors" and "Block Decoding"
Low Block Limit Block Mode/
Low Block
Limit
  Defines a second quality limit. If too many lines are below the Block Limit, this second limit is used to recover some blocks.
Block Lazy Block Mode/
Block Lazy
  Adds a lazieness to the error detection system: Lines, that are assumed to be very bad decoded, keep being bad for several frames, getting slowly better. 0 for off.
Min. Block
Size
Block Mode/
Min. Block Size
  Minimum block size. Determines, how many lines of good decoding are necessary to build a 'good' block.
    C Capture BMP
Saves the current picture as CAPTnnnn.BMP in the current directory.
    Shift-C Capture YUY2
Saves the current undecoded frame to the file pic.yuy2.
    F Freeze mode.
Decodes in a endless loop the same picture.
By that, you can observe, how the picture changes if you change some of the decoding parameters.
    Shift-F Load Freeze from pic.yuy2
Loads a frame from the file pic.yuy2 to the freeze buffer and activates the freeze buffer.
    O Performance Monitoring.
Displays additional performance monitoring information in the menu. (2 pages!) See below.

Options for the command line

The universal hVCPlus call convention:

hvcplus [profile_name] [-S] [-Txx] [-TSxx]
Meaning:


Settings for other, not BT compatible TV cards

Since hVCplus is based on MoreTV 2.83, and by that on Video for Windows, it can use every TV input. But for perfect Videocrypt decoding, some special hardware adjustments are necessary. Because of that, the quality on non-BT-cards is quite bad. However, here are some tips:
 

Elsa Erazor / Elsa Erazor III Pro ViVo

Capture resolution has to be 704x288 or 768x288. The option "Output Compatibility" has to be checked. Output works for all RGB modes. YUY2 may work. Dec. Width has to be 994. For Softcrypt decoding, KeyOffset has to be set to 1.
These settings are stored as the profile "Erazor III".

With "Force 576 Lines" deactivated, you can capture at 352x288 and 384x288 too, but the captured part of the program is too small: The Videocrypt area ends outside the screen on the left and on the right.

Other TV-In's

If the TV card supports capturing at 7xx*576, try using 7xx*288 and "[x] Force 576 Lines". If the card supports capturing at 3xx*288, try using 3xx*288 and "[  ] Force 576 Lines". Using RGB output with "Compatibility Mode" causes the least trouble. After that, try if other options are possible. You probably have to adjust the decoding width, but you can do that while the decoder is running.
 

Adding other BT compatible TV cards

All TV card informations are stored in the INI file. Because of that, its easy to add new card information to hVCPlus.

The lazy way: Take a look at the BTW database, there's a list of other TV cards. There's also a hVCPlus export function.

The fast way: Add the following to the INI file:

[CRD_My TV card]
default_tuner=0
audio_mux0=FC33F2
audio_mute=FC33F8
The card name can be freely choosen.
default_tuner should be 0 for Temic-Tuners and 2 for Philips-Tuners.
The value of audio_mux0 is often referred as GPIO_TUNER. The value of audio_mute is often referred as GPIO_MUTE.

Precise: This is an universal entry:

[CRD_Card name]
mux_order=x,x,x,x
default_tuner=x
audio_mask=x
audio_mute=x
audio_mux0=x
audio_mux1=x
audio_mux2=x
audio_mux3=x
hVCPlus accepts all entries starting with CRD_ as TV card.

mux_order: Ordering of the TV chip inputs Tuner,EXT1,EXT2,EXT3, as in bit 5-6 of GPIO_IFORM. Missing entries are automatically completed. Default 2,3,1,0.

default_tuner: Automatically suggested tuner type. 0=Temic Pal B/G, 2=Philips Pal B/G. Default: No tuner.

audio_mask: (Hex) Bit mask for accessing GPIO_DATA. 0-Bit stays untouched. Default FFFFFF

audio_mute: (Hex) Bit mask for GPIO_DATA, activating sound mute.
audio_mux0: same, activating tuner sound output. Default to mute.
audio_mux1-3: same, activating EXT1-3 sound. Default to mute.
 
 

Performance Monitor

The performance monitor is a diagnostic tool to measure the CPU load of different parts of the decoder. The monitor has two pages shown in the onscreen menu. The information is the running time in milliseconds / the number of calls for decoding one half frame.
Some values are not available in the release build of hVCPlus due to their performance impact. If needed, I can provide a special build with full performance monitoring.
The values in detail:
 
CPU Clock Current CPU clock.
Idle+Capt Idle-time of the decoder: Time between two half frames.
50Dly Idle-time between half frames for 50fps/Interlaced mode.
Decode Overall time for decoding
Output Overall time for output
Autodetect Time to detect the encryption method.
Zoom (L1) Dec Time/Number of calls for the L1 decoder: Zoom decoder.
Ln Comp (BW) Time/Number of calls for the BW line compare.
Not available in release build.
Ln Comp (Color) Time/Number of calls for the color line compare.
Not available in release build.
LCCache Access statistics for line compare cache: Cache hits / Cache hit, but need to recalculate / Cache miss.
Not available in release build.
Convert Time to convert thne frame buffer: YUY2 to BW / BW to Zoom / YUY2 to Phi+Chroma
Not available in release build.
Zoom Dec (L1) Overall time for L1 decoder: Zoom decoder.
BW Dec (L2) Overall time for L2 decoder: rough search.
BW Dec (L3) Overall time for L3 decoder: fine search.
Simp. Border Simple border detection using distribution.
Color Correl. Color Correlation (CC) + ADL-correction
Adv. Border Border detection using color and Frame Correlation
ReCC Dec. ReCC decoder
PRNG Decode Time for the search of the PRNG key. (may be of an older frame)
Key Search Time for comparing the key pattern with the current frame.
Key Generate Time to generate the key pattern from the PRNG key. (may be of an older frame)
Key Hit/Miss Overall count of frames with succesfull / unsuccessfull key identification.

 

Frequently asked questions (FAQ)
 

Where can I get the latest version?

The latest version is availabe on the hVCPlus web page and on the decoder panges listed in the link-section.
 

hVCPlus does not work. Who can help?

The best help is availabe on the discussion boards in the web. (see link section)
These boards are german, but most of these peoples can speak english quite good, so try.
Try to use the search function. Your problem might be already answered before.

No_operation can be contacted on no_operation@gmx.de
Viper_jk (currently retired) can be contacted on hVCPlus@gmx.net

If you're asking, provide the following information:
-The hVCPlus version
-Your Windows version
-Name of your TV card
-Name of your graphics card
-Which CPU do you have?
-Do you use the antenna input or the video input of your TV card?
-Try to describe the problem as exactly as possible.
 

Can I get the source code?

Of course, the source codes for hVCPlus are still free to use for everyone who's interested. The up-to-date source codes will always be accessible (with a short delay, I hope you excuse) on no_operation's hVCPlus-Seite for download.
 

I only see a blue screen / colorful stripes.

Your TV card currently does not recieve a TV signal. Normally, hVCPlus uses the signal of the video input. You can choose a channel in the onscreen manu (M). To do this, you have to select the correct TV card (or tuner type) before starting hVCPlus. There are some more tips in the Starting hVCPlus section.
 

The picture is jumping. Is there a way to improve the picture?

Videocrypt decoders try to reconstruct the picture as good as possible. But this isnt always possible without errors. Especially dark scenes and horizontal lines result in distortions. But at least sometimes, the picture should be nearly error free, as ex. on scenes showing faces. There are some examples on the web page: Beispielbilder von hVCPlus
If the complete picture is shifted left or right, and many colors are blue, you maybe can adjust that by setting ColorFix1.
 

Where can I get key files / how do I use key files?

In summer 1999, Sky was quite good decodable by using key files, because Sky was changing all chip cards. Since the change phase ended, key attacks are not working any more.
 

I cant decode Premiere.

hVCPlus is a decoder for Videocrypt, like its used in europe by the Sky group on the Astra satelites. Premiere (Nagravision/Syster) can be decoded with other programs. Other decoders are available on the decoder pages (see link section).
 

I cant activate Optimize BT, but I have a BT card.

Possibly, you're using Windows 2000. Sometimes, there are problems using the direct hardware access on Windws 2000. Maybe newer versions of the HWIO files (HWIO95.VXD, HWIONT.SYS, HWIODRV.DLL), as used for ex. by MoreTV, will work. These files are also available on the hVCPlus page for download.
 

hVCPlus hangs after a while.

These are often problems with the IRQ's. If hVCPlus hangs after a while of normal decoding, the reason may be the activity of a PCI card. (SCSI controller doing a bus scan, network adapters searching for other computers...)
To check this, you can simply disable this card by deactivaing it in the device manager.

Make sure no other device is using the same IRQ as your TV card. (except for IRQ holders)
To change the IRQ it may be necessary to put the TV card into a different PCI slot.
 

In DelayLoop modue the sound is jittering.
Message: Audio Loop: Buffer resynchronisation.
Message: Audio Loop: Hang detected. Skipping frame.

Due to the high CPU load while decoding, the audio management gets stalled, even with a higher priority level. For continuous sound, the decoder should reach 25fps even in critical situations, to keep some CPU power free for the audio process.
Some tips:
-Use a different resolution / quality profile.
-If your TV card only provides mono sound, set AudioStereo to 0. (currently only in the INI file)
-Reduce the sample rate or switch to 8 bit sound. (currently only in the INI file)
-If resynchronisations occur very often, try increasing the values of AudioHiTolerance and AudioLoTolerance. (currently only in the INI file)
 

In DelayLoop mode, I can  hear everything twice.

Before you start hVCPlus, mute the corresponding channel in the mixer program of your sound card, but keep it activated for recording. hVCPlus currently doesnt access the mixer device by its own, so you have to switch it manually with an external program each time you switch between with/without DelayLoop.
 

Error message: Audio Error: DirectSoundCapture ... An invalid parameter ...

Your sound card doesnt support Full Duplex mode, meaning it cant play and record at the same time. For some sound cards you can switch Full Duplex capabilities in the device manager.
Maybe it helps to set AudioReverseInit=1 in the INI file.
 

Error message: CreateSurface... Overlay...

Your graphics card could not activate a YUY2 overlay window. Try installing the newest graphics card driver. You can also use a RGB mode instead of YUY2.
 

Error message: No frames have been captured.

This is a message from the TV card driver. The TV hardware was activated, but the driver never recieved a signal that a frame was captured. Usally, this is a driver or IRQ problem.

Make sure no other device is using the same IRQ as your TV card. (except for IRQ holders)
To change the IRQ it may be necessary to put the TV card into a different PCI slot.
 

Error message: Could not find capture device.

The driver of the TV card wasnt found or couldnt be started. Did you select the correct driver in the start dialog? Is the TV card driver properly installed? Does the original TV software work?
hVCPlus is one of the last decoder programs that are using the Video For Windows driver.
 

Known Bugs

Preview

Probably there will be Videocrypt channels in europe until 06/30/2001. Until then, maybe some of these features will be implemented:

What's coming after the PRNG decoder and the PRNGv2 decoder? The PRNGv3 decoder! There are some ideas left, and NewMan's approach will surely add some too.

Controlling the sound card mixer, to mute the normal sound in DelayLoop mode.

Maybe there will be a direct access of the BT chip sometime, without the use of a VFW-driver.

I'm still working on an (german) documentation of videocrypt decoding.
 

Links

Links have a short life time. There may be a more up to date link list on
no_operation's hVCPlus-Seite (redirector) (Mirror) (Mirror).

Web pages related to software decoding:

Other useful web sites:

Die offizielle SatPCTV hVCPlus Helpme-Seite
covering version 0.60, suppose 0.71 soon too.

Lyngemark Satellite Chart: Astra 1A/1B/1C/1E/1F/1G/1H at 19,2°E
All ASTRA programs with channel, frequency, encryption, broadcast times and web adress.

BTW-Database (Mirror) (Latest release available at FreeTV)
A Database for settings of TV cards. A hVCPlus extension is in development.

The current discussion forums: (Try using the search engine!)


Credits


 
 
 
 

no_operation, 18.2.2001