SSAVI Scrambling System FAQ

Disclaimer

This document is not an instruction how to build a descrambler. The building, possessing, using, or selling descramblers is illegal in many countries.

Table of contents

The television system in Finland

The television system used in Finland is system B/PAL in VHF band and system G/PAL in UHF band. More general video signal info can be found in This Document. This document describes the SSAVI system implementation with the B,G/PAL system.

General description

The SSAVI scrambling system is based on shifting of the DC level of line synchronisation pulses and inverting the video signal. The raising of the line synchronisation pulses is done by line basis and video inversion is done by field basis. The video inversion and the raising of the synchronisation are almost independent of each other and they may change at random intervals.

The restoration of the original synchronisation level is done by comparing the level of the front porch to the normal black level. In case the front porch is raised the following synchronisation is also raised and the level will be lowered to the normal before the synchronisation pulse.

The video inversion is detected either by sampling the voltage level at the latter part of line 22 (line 334 of the second field) or by using one data bit (bit 7) on data frame of line 9 (line 322 of the second field).

The received channel is decoded only if the decoder has subscription for the channel. The subscription data and the identification of channel being received are transmitted during the field blanking interval on lines 6, 7, 8, and 9 (lines 319, 320, 321, and 322 of the second field).

The individually addressed subscription data is sent for each decoder on the network. The decoder finds own information by comparing the transmitted decoder address to its own internally programmed address. If the addresses match the decoder stores the sent subscription data to its own memory. The address of the decoder is stored in a 256 x 4 bit Bipolar PROM. The address is marked by both bar-code (Code 39) and numbers in a sticker at the back side of the decoder. This address sticker is printed by a dot-matrix printer and it can thus be identified from other bar-code stickers.

The encoders for this system are supplied by Zenith and decoders are made by Salora under the Zenith licence.

How to recognize a SSAVI picture

In Finland, Sweden, and Norway the easiest way to detect SSAVI is to check whether the Salora decoder type SAHT1006 or SAHT2000 is used.


Figure 1. A typical SSAVI picture (The Original).

The picture shows SSAVI scrambling with inverted video and raised syncchronisation pulses. The horizontal and vertical synchronisations are lost. The raised horizontal period is visible and the picture is a bit dark. Clearest identification of SSAVI are the white data lines above the picture. They are constantly moving narrow and wide bars right adjusted. The possible closed caption data is below these datalines and is more detailed than the SSAVI data. The actual picture may be very different because of different synchronisation, AGC, colour synchronisation, and black level clamp of the tv set.

Many television sets have audio/video muting after end of transmission. This muting may be activated when synchronisation pulses are missing.


Figure 2. An oscilloscope picture of scrambled video signal

Inspecting the video signal by oscilloscope will show following deviations from normal PAL video signal:

The data signal

The data required is transferred during the field blanking interval at lines 6-9 (lines 319-322 of the second field). One data frame consists of 25 data bits and one parity bit (Figure 3). In this system the parity is odd. The data is inserted to each channel by an individual encoder at the same time as the video is encoded. The subscription data is sent to each encoder by the subscriber database server.


Figure 3. The format of the data signal

The data is binary and it is coded between white level and black level by pulse width encoding containing the clock signal. A falling edge of the signal preceeds the level containing the information bit. The bit value 1 is coded as black level and the bit value 0 is coded as white level. The bit sampling clock can be restored by delaying the falling edge by 1µs (Figure 4).


Figure 4. The coding of bits 0 (red) and 1 (blue)

The system can individually identify 20 different channels. These channels are divided to four tiers A, B, C, and D each containing five channels. The channel subscription data for each of the four tiers A-D contains five bits (4 x 5 bits).


Figure 5. The fields of the data frames

The three first frames contain the tier number (T), the address of a decoder, and the bitmask of subscriptions for this tier (Figure 5). The fourth frame contains the tier number for the channel being received (T), the number of the transmitting network, information of the video inversion (I), the latitudal checksum of all four frames (C), and the number of channel being received. In the program number field one out of the five bits is normally high. The digit 0 in figure 5 means that the bit is not used.

The address of the decoder is 18 bits wide and therefore one network may have 262144 separate decoders. The network number has 11 bits which makes 2048 separate networks possible. Therefore the decoder does not operate on any other network.

The decoder compares the sent subscription data address to its own address and if they match the 5-bit value is stored to the memory location corresponding the sent tier number. Value 1 in the bitmask means subscribed channel.

The subscription data is sent as a continuous flow. At first subscriptions of tier A channels are sent for about ten decoders. Then tier B subscriptions for about ten decoders, etc. After tier D the subscriptions continue for tier A again.

An example of the continuous data flow:

 D:54866:00110
 D:54865:10110
 D:54864:10000
 B:0:1001:+:00100
 A:54869:10000
 A:54868:10000
 A:54867:10000
 B:0:1001:+:00100
 A:52066:10100
 A:52063:10100
 A:52059:11100
 B:0:1001:+:00100
 A:52074:10011
 A:52071:10100
 A:52069:10100
 B:0:1001:+:00100
Explanation: All numbers above are decimal except the last number which is a five bit binary number. Every fourth frame contains '+' which means the value of the video inversion bit (I).

Decoder 54866 receives the subscription bitmask 00110 for tier D. Decoder 54865 receives the subscription bitmask 10110 for tier D. Decoder 54864 receives the subscription bitmask 10000 for tier D. The transmitted channel belongs to tier B. The transmission network number is 1001. Next field is not inverted. The channel identification mask is 00100 (The channel is CNN) Decoder 54869 receives the subscription bitmask 10000 for tier A, etc.

The decoder does the binary AND between its own subscription data field and the channel identification field. The subscription data field is that of the channel being received. If the result is non-zero the channel is decoded. Additionally the transmitted network number must match that of the decoder.

The bit 7 in the last frame reveals the possible video inversion. If this bit is 1 the video is normal, and if the bit is 0 the video is inverted.

The encoder sends a checksum of all four successive data frames. I have no knowledge whether this checksum is exploited by the decoder. The result of the checksum is also affected by the video inversion bit. The checksum calculation can be done as follows (Figure 6):


Figure 6. Calculation of the checksum

The data was collected to a PC by device in picture and by 8255 I/O-card. Note the need of a working decoder to create the synchronisation.

The active video inversion

The video inversion can be additionally determined by the level of the end of line 22 (Figures 7 and 8). The line 22 is always on white level for 15µs from the beginning of the active video.


Figure 7. Line 22 with normal (red) and inverted (blue) video.

The white level at the beginning of line 22 is used to determine the voltage level around which the video inversion is done. If the end of the line 22 has black level next field is not inverted. If the end has white level the video is inverted.


Figure 8. The pulse indicating the video inversion

The video may be inverted at lines 24-306 in the first field and at lines 336-619 in the second field. The video is inverted only during the active 52µs time.

The video inversion is not done totally random. The inversion may depend on the picture contents. A cut between to takes with a few black fields can cause a change to the video inversion. Normally the signal is not simultaneously non-inverted and contains normal (not raised) synchronisation pulses. This is a configurable feature of the encoder.

The inverted video signal resembles the colour negative image. This is caused by the inversion of the luminance component of the video signal and 180° change in the colour subcarrier phase.

The raising of the line synchronisation pulses

The normal front porch is extended in the encoder output signal. By comparing the level of the front porch the decoder can determine whether the following synchronising pulse is raised (Figure 9). If the synchronisation is raised the front and back porches are raised also. During the beginning of the front porch the decoder switches a sampled black level to the output. Just before the falling edge of the synchronising pulse the lowered or the normal sync pulse is switched to the output.


Figure 9. The raising of the synchronisation

The synchronisation is raised on lines 29-306 at the first field and on lines 342-619 on the second field. Therefore the field blanking, the equalising pulses, and the field synchronisation pulse are normal.

The synchronisation raising can also mix the receiver colours. The receiver assumes the colour synchronisation to follow the line synchronisation pulse. When the pulse is missing at the encoded signal the colour burst is not found and the colours are mixed.

When viewed by a normal receiver the missing synchronisation appears as a scrolling, tilting, and swinging picture.

The decoder output

The decoder removes all subscription data from the output and lowers the end of line 22 to the black level (Figure 7 red line). The noise in the decoder output indicates whether decoder switches output from the input or from some sampled voltage level. The sampled voltage source is revealed by the lack of normal noise (Figure 10). The change of output sources by a analogue switch causes glitches to the decoder to the decoder output signal.


Figure 10. Noise and glitches in decoder output signal

Disturbances caused by the system

Although the system is designed to be as transparent as possible there are some artefacts.

The encoded signal can not be transferred via radio waves like normal television broadcasts. The main reason is the raised synchronisation pulses. The television system in Finland uses negative amplitude modulation. The synchronisation pulse bottoms mean the maximum modulation of the RF carrier. The automatic gain control utilises this signal to adjust a constant video amplitude. This method does not work during raised synchronisation.

The SSAVI system data signal destroys possible text-tv transmission at lines 6-9 (319-322 in the second field).

The video inversion causes small amount of annoying flicker which is visible specially in dark scenes of a signal.

It may take two seconds for the decoder to stabilise after a channel is changed. This feature annoys especially a channel surfer.

The encoded channel allocation at Tampere

This is a list of pay-tv channels of Tampereen Tietoverkko Oy (TTV). You find the frequencies of these channels here. Newest list of TTV channels is here.
Channel Tier Mask     Programme
=================================================
S11      C   10000    VH-1
S18      C   01000    TV 1000
S20      C   00100    Sci-Fi Channel
S21      A   00100    FilmNet 1
S22      D   10000    FilmNet 2
S23      C   00100    RTL
S24      A   01000    Super Sport
S25      A   00001    TVE
S26      B   01000    BBC Prime
S27      B   00100    CNN International
S28      B   10000    TNT & Cartoon Network
S29      C   01000    TV 1000 CINEMA
S30      B   00010    RAI UNO
S31      B   10000    Discovery / The Children's Channel
S32      C   00001    TV4 Nordisk
S33      C   00010    Moscow
S34      B   10111    Travel Channel
Channel pairs TNT/Discovery, Sci-Fi/RTL, and TV1000/CINEMA use identical tier and channel number. They are same channel from the system point of view and therefore they can not be subscribed separately.

In the table above Travel Channel has mask 10111 which means that Travel Channel can be seen if any of the channels TNT/Discovery, CNN, or RAI is subscribed.

PlusSat contains channels: Sci-Fi, RTL, TVE, BBC, CNN, TNT, RAI, Discovery/TCC, TV4, Moscow, and Travel.

Channels/groups: FilmNet, TV1000/CINEMA, Super Sport, PlusSat, VH-1, and Moscow can be subscribed separately. This results in 48 different channel combinations. Note that Moscow belongs also to the PlusSat.

Below is a statistics of subscriptions for decoders of TTV. There may be some test decoders included. The excess bits are most likely remains of some earlier subscriptions and the subscriber database is not cleaned from them.

The subscription data for these 7400 decoders is continuously repeating cycle which takes 3 minutes 20 seconds.

Interesting feature is that all decoders, including those not having any transmitted channels, have subscription bit 5 for tier A set. This bit may have some essential significance for the decoder.

 Pcs    A     B     C     D    Explanation
=========================================================================
   1  10000 00000 10000 00000  VH-1
   1  10000 00000 10010 00000  VH-1 + Moscow
   1  10001 00100 00000 00000  TVE + CNN
   1  10010 00100 00000 00000  CNN
   1  10011 11110 11111 01110  VH-1 + PlusSat + TV1000
   1  10101 11110 00111 10110  FilmNet + PlusSat
   1  10111 11110 00000 10100  FilmNet + PlusSat -SciFi -TV4 -Moscow
   1  11011 11111 00111 10110  PlusSat + SuperSport +FilmNet2
   1  11100 00000 00000 00000  SuperSport + FilmNet1
   1  11100 00000 10000 10000  VH-1 + FilmNet + SuperSport
   1  11101 11110 01111 11110  SuperSport + FilmNet + TV1000 + PlusSat
   2  10100 00000 00000 00000  FilmNet1
   2  11000 00000 00010 00000  SuperSport + Moscow
   2  11011 11110 00100 10100  SuperSport + PlusSat + FilmNet2 -TV4 -Moscow
   2  11011 11110 11111 01110  VH-1 + SuperSport + PlusSat + TV1000
   2  11111 11111 11111 11110  VH-1 + SuperSport + FilmNet + TV1000 + PlusSat
   3  10000 00100 00000 00000  CNN
   3  10100 00000 10000 10000  VH-1 + FilmNet
   3  11000 00000 10000 00000  VH-1 + SuperSport
   3  11111 11111 01111 10110  SuperSport + FilmNet + TV1000 + PlusSat
   4  11111 11110 00110 10100  SuperSport + FilmNet + PlusSat -TV4
   5  10000 00000 01011 00000  TV1000 + Moscow
   5  11111 11111 00100 10100  SuperSport + FilmNet + PlusSat -TV4 -Moscow
   6  11011 11110 10111 01110  VH-1 + SuperSport + PlusSat
   6  11100 00000 00010 10000  SuperSport + FilmNet + Moscow
   6  11111 11110 00100 10100  SuperSport + FilmNet + PlusSat -TV4 -Moscow
   6  11111 11110 10111 11110  VH-1 + SuperSport + FilmNet + PlusSat
   6  11111 11111 01111 11110  SuperSport + FilmNet + TV1000 + PlusSat
   7  10111 11110 10111 11110  VH-1 + FilmNet + PlusSat
  12  10011 11110 10111 01110  VH-1 + PlusSat
  12  11000 00000 01000 00000  Supersoprt + TV1000
  14  11100 00000 01000 10000  SuperSport + FilmNet + TV1000
  15  10100 00000 00010 10000  FilmNet + Moscow
  17  11011 11110 01111 01110  SuperSport + TV1000 + PlusSat
  18  10111 11110 01111 11110  FilmNet + TV1000 + PlusSat
  23  10100 00000 01000 10000  FilmNet + TV1000
  51  10011 11110 01111 01110  TV1000 + PlusSat
  62  11111 11110 11111 11110  VH-1 + SuperSport + FilmNet + TV1000 + PlusSat
  72  11011 11110 00111 00110  SuperSport + PlusSat
  74  11011 11110 00111 01110  SuperSport + PlusSat
  82  10000 00000 01000 00000  TV1000
  85  11111 11110 01111 11110  SuperSport + FilmNet + TV1000 + PlusSat
 109  10111 11110 00111 11110  FilmNet + PlusSat
 143  10011 11110 00111 01110  PlusSat
 156  11111 11110 00111 11110  SuperSport + FilmNet + PlusSat
 162  11000 00000 00000 00000  SuperSport
 195  10000 00000 00010 00000  Moscow
 229  11111 11110 00111 10110  SuperSport + FilmNet + PlusSat
 380  10111 11110 00111 10110  FilmNet + PlusSat
 447  10011 11110 00111 00110  PlusSat
 932  11100 00000 00000 10000  SuperSport + FilmNet
1719  10100 00000 00000 10000  FilmNet
2309  10000 00000 00000 00000  No authorised channels

Links and references

Links and references dealing the subject are found here.

pam@iki.fi

This document is updated 1999-12-13