Skip to content
VK3DG edited this page May 6, 2024 · 12 revisions

DATV Repeater

Welcome to the DATV Repeater project! This repository hosts the source code for a software-derived Digital Amateur Television (DATV) Repeater.

The concept of this repeater was developed during the COVID-19 lockdowns, inspired by the Voctomix project. The implementation primarily borrows ideas from Voctomix which was coded in Python. I decided to port my implementation into Go to leverage Go's concurrency and parallelism capabilities to run the modules asynchronously. The software was developed exclusively for the Geelong Amateur Radio Club (GARC) DATV repeater VK3RGL, located at their Mt Anakie repeater site, 30 km Northwest from the Geelong townhall. Learn more about GARC.

Features

  • Service-Only Operation: The repeater runs entirely as a service without a GUI, which simplifies its deployment and operation. The software runs on server grade hardware with inbuilt BMC for remote motherboard management.
  • Multi-Channel Support: Configurable to support multiple broadcasting channels by configuring config.yaml file.
  • Inputs: The DVB receiver operates independently to the main repeater core and uses RTP to transport the MPEG-TS to the core for decoding. Here's the link to the receiver DATV Receiver
  • Outputs: UT-100C USB or Decktec DTA-2116 USB/PCIe cards for TX.
  • Local Monitoring: Blackmagic Decklink Duo PCIe card for local in-Rack monitoring over SDI connections.
  • Video Processing: Implements H.264 decoding and encoding with GPU acceleration (requires Nvidia or compatible GPU).
  • Audio and Video Mixing: Uses GStreamer pipelines for all AV mixing tasks leveraging GPU where possible.
  • Streaming: Includes an RTMP streamer to broadcast to the BATC site via our 5.8GHz highspeed RF link.
  • Additional Features: Internal test chart generator, overlays with DSK for HTML5-based lower thirds, full datetime scheduling, DTMF remote control via UHF side channel, and a modular design that allows for the addition of new features.

Requirements

Dependencies

Ensure all required hardware is installed and drivers are configured. For driver installation and setup, refer to the configuration section below. The install.sh script checks dependencies and for needed hardware and loads of builds these on the system.

There are multitude of dependencies to run repeater. Each have their own How-to.

TBS 6522 drivers. Dektec DTA PCIe drivers. Blackmagic Duo2 drivers.

Latest GStreamer build with x264 and nvcodes.

External app dependencies:-

  • TSduck
  • mptsd
  • vbit2

Installation

To get started with the DATV Repeater, clone this repository and follow the setup instructions:

git clone https://github.com/TVforME/Repeater.git
cd Repeater
chmod +x install.sh
./install.sh

./repeater <options>
Clone this wiki locally