TX Analog TV with HackRF using HackTV
If you’ve ever wanted to experiment with analog TV transmission using a HackRF, hacktv is an amazing open-source project that makes this possible. Paired with the slick GUI wrapper hacktv-gui, you can easily transmit video files or test patterns as analog TV signals using a variety of formats.
This guide walks you through getting both tools running on Linux and transmitting your first analog TV signal.
🔧 Requirements
- HackRF One
- Linux (tested on Ubuntu/Debian)
- Java (for GUI)
antbuild tool- GCC,
ffmpeg, and other build deps
📦 Clone the Repositories
Start by cloning both projects from GitHub:
git clone https://github.com/captainjack64/hacktv.git
git clone https://github.com/steeviebops/hacktv-gui.git
🛠️ Build hacktv
Install the required packages:
sudo apt update
sudo apt install build-essential libfftw3-dev libavcodec-dev \
libavformat-dev libswscale-dev libavutil-dev hackrf
Then build:
cd hacktv
make
This will create the hacktv binary in the same directory.
🖥️ Build hacktv-gui
The GUI is a Java project that uses Apache Ant for building. First install the dependencies:
sudo apt install default-jdk ant
Then build it:
cd ../hacktv-gui
ant
After a successful build, the GUI JAR will be located in the dist/ folder.
▶️ Using hacktv-gui
Launch the GUI:
java -jar dist/hacktv-gui.jar
The GUI provides options to select:
- Input file (video or test pattern)
- Transmission mode (PAL, NTSC, SECAM)
- Samples (Default is 16, but found 14 works better for me)
- Frequency (in Hz, e.g., 583250000 for CH35)
- Audio settings
Click Start Transmission to begin broadcasting!
📡 Tips for Better Transmission
- Use a low power amplifier only if legal and safe in your area.
- Keep coax short and use a tuned antenna (like a TV dipole).
- A nearby TV should pick up the signal on the specified channel.
- Use test patterns to confirm clarity before transmitting video.
🧼 To Stop
Click Stop Transmission in the GUI or CTRL+C in terminal if using CLI.
✅ Done!
You’ve just broadcasted your own analog TV signal using a HackRF. Great for educational demos, retro tech experiments, or old-school AV fun. Happy hacking!