gr-qam
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!