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)
  • ant build 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!