Skip to content
Analogue TV transmitter for the HackRF
C Shell Makefile
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore Add build script for Windows x86_64 Jan 31, 2019
COPYING Initial code commit May 22, 2017
Makefile Add Videocrypt S simulation. May 24, 2019
README Update help text and README Jul 22, 2019
build_win64.sh Add FL2K libraries to win64 build script May 20, 2019
common.c Oops, forgotten files from previous commit. Nov 13, 2018
common.h Oops, forgotten files from previous commit. Nov 13, 2018
demo.tti Initial teletext support. May 30, 2018
ffmpeg.c Handle video-only / audio-only files properly. Feb 3, 2019
ffmpeg.h Rewrite of the ffmpeg interface. Multi-threaded, improved A/V sync an… Oct 30, 2018
file.c Tidy up Feb 26, 2019
file.h Add option to set the output file data type Dec 14, 2017
fir.c Initial attempt at a FIR filter for int16_t streams Dec 14, 2017
fir.h
fl2k.c Add support for fl2k DAC devices. Apr 25, 2019
fl2k.h Add support for fl2k DAC devices. Apr 25, 2019
hackrf.c Add build script for Windows x86_64 Jan 31, 2019
hackrf.h Use uint64_t for frequency value. Jul 15, 2018
hacktv.c Remove leftover debug message Jul 22, 2019
hacktv.h Add FM deviation and audio subcarrier override options Jul 22, 2019
nicam728.c Add NICAM stereo modulator for PAL-I and PAL-B/G modes Nov 13, 2018
nicam728.h Add NICAM stereo modulator for PAL-I and PAL-B/G modes Nov 13, 2018
soapysdr.c Tiny SoapySDR tidyup Apr 25, 2019
soapysdr.h Add option to select antenna for SoapySDR devices Feb 27, 2019
syster.c Correct silly typo May 20, 2019
syster.h Add crude Nagravision Syster hardware support (Premiere Bug) Apr 23, 2019
teletext.c Fix teletext CRC generation. Results match reference service. Mar 22, 2019
teletext.h Add raw teletext packet support. Fixes #7. Jul 8, 2018
test.c Don't render the logo on the test image if the active area is too small Jun 5, 2019
test.h First attempt at audio support. Jun 8, 2017
vbidata.c Add missing license header May 31, 2018
vbidata.h Add missing license header May 31, 2018
video.c Fix level override option when using FM modes Jul 22, 2019
video.h Basic (not very good) SECAM support. Missing required filters. Jun 12, 2019
videocrypt.c Adds initial Videocrypt 2 support, free-access mode May 20, 2019
videocrypt.h Adds initial Videocrypt 2 support, free-access mode May 20, 2019
videocrypts.c Add Videocrypt S simulation. May 24, 2019
videocrypts.h Add Videocrypt S simulation. May 24, 2019
wss.c Add auto option for WSS. Automatically switch between 4:3 and 16:9 de… Jul 10, 2018
wss.h Add auto option for WSS. Automatically switch between 4:3 and 16:9 de… Jul 10, 2018

README

 -[ HackTV - Analogue TV transmitter for the HackRF ]-

WHAT'S IT DO

Generates a PAL/NTSC/SECAM* video signal from a video file or test pattern.
Also supports the older 819, 405, 240 and 30 line standards.
Supports NASA Apollo video standards, both colour and mono.
Input is any file type or URL supported by ffmpeg.
Output can be to a file or directly to a HackRF.
Teletext support.
NICAM stereo audio.
Videocrypt I/II hardware support.
Videocrypt S simulator.
Partial Nagravision Syster hardware support.

* SECAM support is very basic and won't produce a good image.

WHAT'S IT NOT DO (yet)

There are no filters. Needed for proper audio and VSB modulation.
An optional notch filter for the colour subcarrier would be nice.
D-MAC / D2-MAC standards.

WHAT IT WON'T DO

DVB or other pure digital signals.
Bring back Firefly. :(

REQUIREMENTS

Depends on libhackrf and various ffmpeg libraries.

* For Fedora (with rpmfusion)
yum install hackrf-devel osmo-fl2k-devel SoapySDR-devel ffmpeg-devel

* For Debian and related
apt-get update
apt-get install libhackrf-dev libavutil-dev libavdevice-dev libswresample-dev libswscale-dev libavformat-dev libavcodec-dev

INSTALL

make
make install

EXAMPLES

# Generate a file containing a PAL baseband signal from a video
$ hacktv -o baseband.bin -m pal example.mkv

# Transmit a test pattern on UHF channel 31 (PAL System I), 47dB TX gain
$ hacktv -f 551250000 -m i -g 47 test

# Transmit a test pattern with teletext
$ hacktv -f 551250000 -m i -g 47 --teletext demo.tti test

# Download and transmit teletext pages from the Teefax service
# http://teastop.co.uk/teletext/
$ svn checkout http://teastop.plus.com/svn/teletext/ teefax
$ hacktv -f 551250000 -m i -g 47 --teletext teefax test

-Philip Heron <phil@sanslogic.co.uk>

You can’t perform that action at this time.