gr-qam icon indicating copy to clipboard operation
gr-qam copied to clipboard

A QAM-64 transmitter for GNU Radio. This project was merged into GNU Radio in version 3.7.10.

Copyright 2014 Clayton Smith

This file is part of gr-qam

gr-qam is free software; you can redistribute it and/or modify

it under the terms of the GNU General Public License as published by

the Free Software Foundation; either version 3, or (at your option)

any later version.

gr-qam is distributed in the hope that it will be useful,

but WITHOUT ANY WARRANTY; without even the implied warranty of

MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the

GNU General Public License for more details.

You should have received a copy of the GNU General Public License

along with gr-qam; see the file COPYING. If not, write to

the Free Software Foundation, Inc., 51 Franklin Street,

Boston, MA 02110-1301, USA.

gr-qam

Author: Clayton Smith Email: [email protected]

The goal of thhis project is to build a software-defined 64-QAM and 256-QAM transmitter, based on the ANSI/SCTE 07 2013 Digital Transmission Standard for Cable Television:

http://www.scte.org/FileDownload.aspx?A=3445

Build instructions:

mkdir build
cd build
cmake ../
make
sudo make install
sudo ldconfig

If your GNU Radio is installed in /usr (rather than /usr/local), then replace the third line above with:

cmake -DCMAKE_INSTALL_PREFIX=/usr ../

You may also need to export the PKG_CONFIG_PATH environment variable for cmake to find your GNU Radio libraries. For example, if you had installed into /opt/gnuradio, you may need to have PKG_CONFIG_PATH set to "/opt/gnuradio/lib/pkgconfig" or "/opt/gnuradio/lib64/pkgconfig".

At present only 64-QAM is supported. An example transmitter can be found in /apps. It can transmit MPEG transport streams generated by avconv. For example, to transmit the video from your webcam and audio from your microphone, try this:

mkfifo in.fifo

avconv -f alsa -i pulse -f video4linux2 -s 640x480 -i /dev/video0 \
  -vcodec mpeg2video -s 640x480 -r 60 -b 5000000 -acodec ac3 \
  -ar 48000 -ab 192000 -ac 2 -muxrate 26970352 -mpegts_service_id 1 \
  -f mpegts -y in.fifo

Contributions are welcome!