- -o, --output
<target>
- Set the output device or file, Default: hackrf
- -m, --mode <name>
- Set the television mode. Default: i
- -s, --samplerate
<value>
- Set the sample rate in Hz. Default: 16MHz
- -l, --level <value>
- Set the output level. Default: 1.0
- -D, --deviation
<value>
- Override the mode's FM deviation. (Hz)
- -G, --gamma
<value>
- Override the mode's gamma correction value.
- -r, --repeat
- Repeat the inputs forever.
- -v, --verbose
- Enable verbose output.
- --teletext
<path>
- Enable teletext output. (625 line modes only)
- --wss
<mode>
- Enable WSS output. (625 line modes only)
- --videocrypt
<mode>
- Enable Videocrypt I scrambling. (PAL only)
- --videocrypt2
<mode>
- Enable Videocrypt II scrambling. (PAL only)
- --videocrypts
<mode>
- Enable Videocrypt S scrambling. (PAL only)
- --syster
- Enable Nagravision Syster scambling. (PAL only)
- --filter
- Enable experimental VSB modulation filter.
- --noaudio
- Suppress all audio subcarriers.
Input options
- test:colourbars
- Generate and transmit a test pattern.
- ffmpeg:<file|url>
- Decode and transmit a video file with ffmpeg.
- If no valid input prefix is provided, ffmpeg: is assumed.
HackRF output options
-o, --output hackrf[:<serial>] Open a
HackRF for output.
- -f, --frequency
<value>
- Set the RF frequency in Hz, 0MHz to 7250MHz.
- -a, --amp
- Enable the TX RF amplifier.
- -g, --gain
<value>
- Set the TX VGA (IF) gain, 0-47dB. Default: 0dB
- Only modes with a complex output are supported by the HackRF.
SoapySDR output options
-o, --output soapysdr[:<opts>] Open a
SoapySDR device for output.
- -f, --frequency
<value>
- Set the RF frequency in Hz.
- -g, --gain
<value>
- Set the TX level. Default: 0dB
- -A, --antenna
<name>
- Set the antenna.
File output options
- -o, --output
file:<filename>
- Open a file for output. Use - for stdout.
- -t, --type
<type>
- Set the file data type.
Supported file types:
- uint8 int8 uint16 int16 int32 float
- The default output is int16. The TV mode will determine if the output is
real or complex.
- If no valid output prefix is provided, file: is assumed.
Supported television modes:
- i
- = PAL colour, 25 fps, 625 lines, AM (complex), 6.0 MHz FM audio
- b, g
- = PAL colour, 25 fps, 625 lines, AM (complex), 5.5 MHz FM audio
- pal-fm
- = PAL colour, 25 fps, 625 lines, FM (complex), 6.5 MHz FM audio
- pal
- = PAL colour, 25 fps, 625 lines, unmodulated (real)
- m
- = NTSC colour, 30/1.001 fps, 525 lines, AM (complex)
- ntsc
- = NTSC colour, 30/1.001 fps, 525 lines, unmodulated (real)
- l
- = SECAM colour, 25 fps, 625 lines, AM (complex), 6.5 MHz AM
- audio
- secam
- = SECAM colour, 25 fps, 625 lines, unmodulated (real)
- e
- = No colour, 25 fps, 819 lines, AM (complex)
- 819
- = No colour, 25 fps, 819 lines, unmodulated (real)
- a
- = No colour, 25 fps, 405 lines, AM (complex)
- 405
- = No colour, 25 fps, 405 lines, unmodulated (real)
- 240-am
- = No colour, 25 fps, 240 lines, AM (complex)
- 240
- = No colour, 25 fps, 240 lines, unmodulated (real)
- 30-am
- = No colour, 12.5 fps, 30 lines, AM (complex)
- 30
- = No colour, 12.5 fps, 30 lines, unmodulated (real)
- apollo-fsc-fm = Field sequential colour, 30/1.001 fps, 525 lines, FM
(complex)
- 1.25 MHz FM audio
- apollo-fsc
- = Field sequential colour, 30/1.001 fps, 525 lines, unmodulated
- (real)
- apollo-fm
- = No colour, 10 fps, 320 lines, FM (complex), 1.25 MHz FM audio
- apollo
- = No colour, 10 fps, 320 lines, unmodulated (real)
NOTE: The number of samples per line is rounded to the nearest
integer, which may result in a slight frame rate error.
For modes which include audio you also need to ensure the sample
rate is adequate to contain both the video signal and audio subcarriers.
16MHz works well with PAL modes, and 13.5MHz for NTSC modes.
Teletext
Teletext is a digital information service transmitted within the
VBI lines of the video signal. Developed in the UK in the 1970s, it was used
throughout much of Europe until the end of analogue TV in the 2010s.
hacktv supports TTI files. The path can be either a single file or
a directory. All files in the directory will be loaded.
Raw packet sources are also supported with the raw:<source>
path name. The input is expected to be 42 byte teletext packets. Use - for
stdin.
Lines 7-22 and 320-335 are used, 16 lines per field.
Teletext support in hacktv is only compatible with 625 line PAL
modes. NTSC and SECAM variations exist and may be supported in the
future.
WSS (Widescreen Signaling)
WSS provides a method to signal to a TV the intended aspect ratio
of the video. The following modes are supported:
- 4:3
- = Video is 4:3.
- 16:9
- = Video is 16:9 (Anamorphic).
- 14:9-letterbox = Crop a 4:3 video to 14:9. 16:9-letterbox = Crop a 4:3
video to 16:9. auto = Automatically switch between 4:3 and 16:9.
Currently only supported in 625 line modes. A 525 line variant
exists and may be supported in future.
Videocrypt I
A video scrambling system used by the Sky TV analogue satellite
service in the UK in the 1990s. Each line of the image is cut at a point
determined by a pseudorandom number generator, then the two parts are
swapped.
hacktv supports the following modes:
- free
- = Free-access, no subscription card is required to decode.
- conditional = A valid Sky card is required to decode. Sample data from
MTV.
Videocrypt is only compatiable with 625 line PAL modes. This
version works best when used with samples rates at multiples of 14MHz.
Videocrypt II
A variation of Videocrypt I used throughout Europe. The scrambling
method is identical to VC1, but has a higher VBI data rate.
hacktv supports the following modes:
- free
- = Free-access, no subscription card is required to decode.
Both VC1 and VC2 cannot be used together except if both are in
free-access mode.
Videocrypt S (Simulation)
A variation of Videocrypt II used on the short lived BBC Select
service. This mode uses line-shuffling rather than line cut-and-rotate.
hacktv supports the following modes:
- free
- = Free-access, no subscription card is required to decode.
This is a simulation and will not work with real hardware. Audio
inversion is not yet supported.
Nagravision Syster
Another video scrambling system used in the 1990s in Europe. The
video lines are vertically shuffled within a field.
Syster is only compatible with 625 line PAL modes and does not
currently work with most hardware.
Audio inversion is not yet supported.
Usage: hacktv [options] input [input...]
- -o, --output
<target>
- Set the output device or file, Default: hackrf
- -m, --mode <name>
- Set the television mode. Default: i
- -s, --samplerate
<value>
- Set the sample rate in Hz. Default: 16MHz
- -l, --level <value>
- Set the output level. Default: 1.0
- -D, --deviation
<value>
- Override the mode's FM deviation. (Hz)
- -G, --gamma
<value>
- Override the mode's gamma correction value.
- -r,
--repeat
- Repeat the inputs forever.
- -v,
--verbose
- Enable verbose output.
- --teletext
<path>
- Enable teletext output. (625 line modes only)
- --wss
<mode>
- Enable WSS output. (625 line modes only)
- --videocrypt
<mode>
- Enable Videocrypt I scrambling. (PAL only)
- --videocrypt2
<mode>
- Enable Videocrypt II scrambling. (PAL only)
- --videocrypts
<mode>
- Enable Videocrypt S scrambling. (PAL only)
- --syster
- Enable Nagravision Syster scambling. (PAL only)
- --filter
- Enable experimental VSB modulation filter.
- --noaudio
- Suppress all audio subcarriers.
Input options
- test:colourbars
- Generate and transmit a test pattern.
- ffmpeg:<file|url>
- Decode and transmit a video file with ffmpeg.
- If no valid input prefix is provided, ffmpeg: is assumed.
HackRF output options
-o, --output hackrf[:<serial>] Open a
HackRF for output.
- -f, --frequency
<value>
- Set the RF frequency in Hz, 0MHz to 7250MHz.
- -a, --amp
- Enable the TX RF amplifier.
- -g, --gain
<value>
- Set the TX VGA (IF) gain, 0-47dB. Default: 0dB
- Only modes with a complex output are supported by the HackRF.
SoapySDR output options
-o, --output soapysdr[:<opts>] Open a
SoapySDR device for output.
- -f, --frequency
<value>
- Set the RF frequency in Hz.
- -g, --gain
<value>
- Set the TX level. Default: 0dB
- -A, --antenna
<name>
- Set the antenna.
File output options
- -o, --output
file:<filename>
- Open a file for output. Use - for stdout.
- -t, --type
<type>
- Set the file data type.
Supported file types:
- uint8 int8 uint16 int16 int32 float
- The default output is int16. The TV mode will determine if the output is
real or complex.
- If no valid output prefix is provided, file: is assumed.
Supported television modes:
- i
- = PAL colour, 25 fps, 625 lines, AM (complex), 6.0 MHz FM audio
- b, g
- = PAL colour, 25 fps, 625 lines, AM (complex), 5.5 MHz FM audio
- pal-fm
- = PAL colour, 25 fps, 625 lines, FM (complex), 6.5 MHz FM audio
- pal
- = PAL colour, 25 fps, 625 lines, unmodulated (real)
- m
- = NTSC colour, 30/1.001 fps, 525 lines, AM (complex)
- ntsc
- = NTSC colour, 30/1.001 fps, 525 lines, unmodulated (real)
- l
- = SECAM colour, 25 fps, 625 lines, AM (complex), 6.5 MHz AM
- audio
- secam
- = SECAM colour, 25 fps, 625 lines, unmodulated (real)
- e
- = No colour, 25 fps, 819 lines, AM (complex)
- 819
- = No colour, 25 fps, 819 lines, unmodulated (real)
- a
- = No colour, 25 fps, 405 lines, AM (complex)
- 405
- = No colour, 25 fps, 405 lines, unmodulated (real)
- 240-am
- = No colour, 25 fps, 240 lines, AM (complex)
- 240
- = No colour, 25 fps, 240 lines, unmodulated (real)
- 30-am
- = No colour, 12.5 fps, 30 lines, AM (complex)
- 30
- = No colour, 12.5 fps, 30 lines, unmodulated (real)
- apollo-fsc-fm = Field sequential colour, 30/1.001 fps, 525 lines, FM
(complex)
- 1.25 MHz FM audio
- apollo-fsc
- = Field sequential colour, 30/1.001 fps, 525 lines, unmodulated
- (real)
- apollo-fm
- = No colour, 10 fps, 320 lines, FM (complex), 1.25 MHz FM audio
- apollo
- = No colour, 10 fps, 320 lines, unmodulated (real)
NOTE: The number of samples per line is rounded to the nearest
integer, which may result in a slight frame rate error.
For modes which include audio you also need to ensure the sample
rate is adequate to contain both the video signal and audio subcarriers.
16MHz works well with PAL modes, and 13.5MHz for NTSC modes.
Teletext
Teletext is a digital information service transmitted within the
VBI lines of the video signal. Developed in the UK in the 1970s, it was used
throughout much of Europe until the end of analogue TV in the 2010s.
hacktv supports TTI files. The path can be either a single file or
a directory. All files in the directory will be loaded.
Raw packet sources are also supported with the raw:<source>
path name. The input is expected to be 42 byte teletext packets. Use - for
stdin.
Lines 7-22 and 320-335 are used, 16 lines per field.
Teletext support in hacktv is only compatible with 625 line PAL
modes. NTSC and SECAM variations exist and may be supported in the
future.
WSS (Widescreen Signaling)
WSS provides a method to signal to a TV the intended aspect ratio
of the video. The following modes are supported:
- 4:3
- = Video is 4:3.
- 16:9
- = Video is 16:9 (Anamorphic).
- 14:9-letterbox = Crop a 4:3 video to 14:9. 16:9-letterbox = Crop a 4:3
video to 16:9. auto = Automatically switch between 4:3 and 16:9.
Currently only supported in 625 line modes. A 525 line variant
exists and may be supported in future.
Videocrypt I
A video scrambling system used by the Sky TV analogue satellite
service in the UK in the 1990s. Each line of the image is cut at a point
determined by a pseudorandom number generator, then the two parts are
swapped.
hacktv supports the following modes:
- free
- = Free-access, no subscription card is required to decode.
- conditional = A valid Sky card is required to decode. Sample data from
MTV.
Videocrypt is only compatiable with 625 line PAL modes. This
version works best when used with samples rates at multiples of 14MHz.
Videocrypt II
A variation of Videocrypt I used throughout Europe. The scrambling
method is identical to VC1, but has a higher VBI data rate.
hacktv supports the following modes:
- free
- = Free-access, no subscription card is required to decode.
Both VC1 and VC2 cannot be used together except if both are in
free-access mode.
Videocrypt S (Simulation)
A variation of Videocrypt II used on the short lived BBC Select
service. This mode uses line-shuffling rather than line cut-and-rotate.
hacktv supports the following modes:
- free
- = Free-access, no subscription card is required to decode.
This is a simulation and will not work with real hardware. Audio
inversion is not yet supported.
Nagravision Syster
Another video scrambling system used in the 1990s in Europe. The
video lines are vertically shuffled within a field.
Syster is only compatible with 625 line PAL modes and does not
currently work with most hardware.
Audio inversion is not yet supported.