CRC-mmbTools     Software Radio Workshop      Pascal.Charest @ crc . caCommunications Research Centre, Canada     EBU-EUR ...
Overview Introduction CRC-mmbTools live CD and website CRC FLOSS DAB tools usage Service encoding Other modulations Conclu...
CRC-mmbTools live CD and website Introduction    A word about the live CD    Ubuntu    Papers Workshops frequency allotmen...
Major Papers An Experimental DAB Delivery Platform For Internet Broadcast Services, F. Lefebvre, IBC 2002 End-to-end Mobil...
CRC-mmbTools live CD and website Introduction Workshops frequency allotment plan    Lets do it!      Band III: 10C-13F    ...
CRC-mmbTools live CD and website Introduction Workshops frequency allotment plan Tools overview    Applications    Documen...
CPU RequirementsMinimum CPU requirements? We dont know, but heres a listof CPU that dont work:    Pentium M 715 @ 1.5 GHz,...
CRC-mmbTools live CD and website Introduction Workshops frequency allotment plan Tools overview Demos    Using the scripts...
http://mmbtools.crc.ca
CRC-mmbTools live CD and website Introduction Tools overview Workshops frequency allotment plan Demos Installation    From...
Gnuradio update$ sudo apt-get remove -y gnuradio gnuradio-doc libgnuradiolibgnuradio-core libgnuradio-omnithread libgruel ...
Gnuradio update$ git clone http://gnuradio.org/git/gnuradio.git$ cd gnuradio$ git checkout v3.3.0$ ./bootstrap$ ./configur...
CRC FLOSS DAB tools usage "In the beginning... was the command line"    CLI (man, help, advantages)    Pipes    Basic scri...
In the beginning, was the command line$ make lovemake: *** No rule to make love. Stop.$ whatis sexsex: nothing appropriate...
Pipes are fun!Src :http://www.smashbros.com/en_us/howto/technique/technique06.html
Script essential#!/bin/bash{your commands here}{multi-line command}{command to run in background &}
Script permissions$ chmod u+x {script name}
CRC FLOSS DAB tools usage "In the beginning... was the command line" CRC-OpenMokast CRC-DabMod    Usage CRC-Dwap CRC-DabMux
CRC FLOSS DAB tools usage "In the beginning... was the command line" CRC-OpenMokast CRC-DabMod CRC-Dwap    Usage CRC-DabMux
CRC FLOSS DAB tools usage "In the beginning... was the command line" CRC-OpenMokast CRC-DabMod CRC-Dwap CRC-DabMux  DAB mu...
DAB Multiplex
CRC-DabMux Flowgraph
Simple configuration#!/bin/bashFREQUENCY=1459792000CRC-DabMux   -A "/usr/share/crc-dabmux/CRC pub.mp2" -S -C   -O fifo:///...
Service information#!/bin/bashFREQUENCY=1459792000CRC-DabMux -i 0xc000 -L "CRC Ensemble" -l "CRC"   -A "/usr/share/crc-dab...
Complex configurationCRC-DabMux -i 0xc000 -L "CRC Ensemble" -l "CRC"   -A "/usr/share/crc-dabmux/CRC pub.mp2"      -S -L "...
Service encoding Audio Multimedia
Service encoding Audio   DAB   DAB+   Celt   Internet source Multimedia
CRC-Dabplus installation$ tar xzf crc-dabplus-distrib-{version}.tar.gz$ sudo dpkg -i crc-dabplus-{version}/packages/*.deb
Testing audio cards$ crc-dabplus -i card://listAvailable capture card devices:hw:0hw:0,0hw:0,0,0 (name: HDA Generic)$ gst-...
DAB+ real-time encodingif [ ! -e fifo ]; then mkfifo fifo; fiCRC-DabMux    -F fifo -k -b 32 -S -C    -O fifo:///dev/stdout...
DAB real-time encodingCRC-DabMux     -F fifo -k -b 192 -S -C ...gst-launch alsasrc device=hw:0 !   audioconvert ! audiores...
CELT real-time encodingCRC-DabMux     -D fifo://fifo -b 96 -S -C ...gst-launch alsasrc device=plughw:0 !  audio/x-raw-int,...
Internet stream real-time encodingCRC-DabMux     -F fifo -k -b 64     -A ... -S -C -C -i0 -t60 -f2 -d ...mpg123 -w - --no-...
Service encoding Audio Multimedia   DLS   DMB   Slideshow
Slideshow real-time encodingCRC-DabMux     -P fifo -k -b 32     -A ... -S -C -C -i0 -t60 -f2 -d ...CRC-SlideShow {inbox_di...
Other modulations FM DRM
Other modulations FM   Tx   Rx   Android DRM
Other modulations FM DRM   Tx   Rx
Installing DREAM# Src: http://sourceforge.net/apps/mediawiki/drm$ sudo apt-get isntall libasound2-dev libhamlib-dev fftw-d...
Installing DREAM: FAAD2$ wget http://downloads.sourceforge.net/faac/faad2-2.7.tar.gz$ tar xzf faad2-2.7.tar.gz$ cd faad2-2...
Installing DREAM: FAAC$ wget http://downloads.sourceforge.net/faac/faac-1.28.tar.gz$ tar xzf faac-1.28.tar.gz$ cd faac-1.2...
Installing DREAM:DREAM$ cd drm$ . bootstrap$ ./configure$ make$ sudo cp linux/drm /usr/local/bin/dream
Conclusion GPL usage TODO
EBU DRW 2011 - CRC-mmbTools - Software Radio Workshop
EBU DRW 2011 - CRC-mmbTools - Software Radio Workshop
EBU DRW 2011 - CRC-mmbTools - Software Radio Workshop
Upcoming SlideShare
Loading in...5
×

EBU DRW 2011 - CRC-mmbTools - Software Radio Workshop

2,128

Published on

These slides list command lines used in the CRC-mmbTools Digital Radio Week 2011 workshop.

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
2,128
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "EBU DRW 2011 - CRC-mmbTools - Software Radio Workshop"

  1. 1. CRC-mmbTools Software Radio Workshop Pascal.Charest @ crc . caCommunications Research Centre, Canada EBU-EUR Digital Radio Week Geneva, February 2011
  2. 2. Overview Introduction CRC-mmbTools live CD and website CRC FLOSS DAB tools usage Service encoding Other modulations Conclusion
  3. 3. CRC-mmbTools live CD and website Introduction A word about the live CD Ubuntu Papers Workshops frequency allotment plan Tools overview Demos Installation
  4. 4. Major Papers An Experimental DAB Delivery Platform For Internet Broadcast Services, F. Lefebvre, IBC 2002 End-to-end Mobile Multimedia Broadcasting Software Tools, F. Lefebvre, P. Charest, IBC 2006 Software Implementation of the DMB Transmission System, P. Charest, F.Lefebvre, WOC 2007 Software DAB Transmitter On Live CD, P. Charest, F. Lefebvre, WOC 2008 Open source handhelds: a broadcaster-led innovation for BTH services. F. Lefebvre, J.-M. Bouffard, P. Charest. EBU Technical Review - Best of 2008. The Openmokast Open Source Framework: Towards User Innovation In The Mobile Broadcasting Application Space, F. Lefebvre, J.-M. Bouffard, P. Charest, IBC 2009
  5. 5. CRC-mmbTools live CD and website Introduction Workshops frequency allotment plan Lets do it! Band III: 10C-13F Band L: any Tools overview Demos Installation
  6. 6. CRC-mmbTools live CD and website Introduction Workshops frequency allotment plan Tools overview Applications Documentation Demonstration scripts Demos Installation
  7. 7. CPU RequirementsMinimum CPU requirements? We dont know, but heres a listof CPU that dont work: Pentium M 715 @ 1.5 GHz, PassMark 393 Intel Atom 330 @1.6 GHz, PassMark 633Benchmark score are from PassMark:http://www.cpubenchmark.net/cpu_list.phpPlease, choose a CPU more powerfull than one listed above.
  8. 8. CRC-mmbTools live CD and website Introduction Workshops frequency allotment plan Tools overview Demos Using the scripts CRC mmbTools website Installation
  9. 9. http://mmbtools.crc.ca
  10. 10. CRC-mmbTools live CD and website Introduction Tools overview Workshops frequency allotment plan Demos Installation From the live CD From USB To a virtual machine Gnuradio update (for WBX)
  11. 11. Gnuradio update$ sudo apt-get remove -y gnuradio gnuradio-doc libgnuradiolibgnuradio-core libgnuradio-omnithread libgruel python-gnuradio-core usrp usrp-doc python-wxgtk2.6$ sudo apt-get -y install git-core autoconf libtool python-devswig libfftw3-dev libcppunit-dev libusb-dev libboost1.37-devguile-1.8-dev sdcc-nf libsdl1.2-dev libgsl0-dev
  12. 12. Gnuradio update$ git clone http://gnuradio.org/git/gnuradio.git$ cd gnuradio$ git checkout v3.3.0$ ./bootstrap$ ./configure --prefix=/usr --sysconfdir=/etc$ make -j2$ sudo make install$ sudo ldconfig$ sudo ln -s gnuradio-companion /usr/bin/grc$ sudo ln -s libgruel.so /usr/lib/libgruel.so.0
  13. 13. CRC FLOSS DAB tools usage "In the beginning... was the command line" CLI (man, help, advantages) Pipes Basic scripting CRC-OpenMokast CRC-DabMod CRC-Dwap CRC-DabMux
  14. 14. In the beginning, was the command line$ make lovemake: *** No rule to make love. Stop.$ whatis sexsex: nothing appropriate$ %blow%blow: no such job$ man womanNo manual entry for woman
  15. 15. Pipes are fun!Src :http://www.smashbros.com/en_us/howto/technique/technique06.html
  16. 16. Script essential#!/bin/bash{your commands here}{multi-line command}{command to run in background &}
  17. 17. Script permissions$ chmod u+x {script name}
  18. 18. CRC FLOSS DAB tools usage "In the beginning... was the command line" CRC-OpenMokast CRC-DabMod Usage CRC-Dwap CRC-DabMux
  19. 19. CRC FLOSS DAB tools usage "In the beginning... was the command line" CRC-OpenMokast CRC-DabMod CRC-Dwap Usage CRC-DabMux
  20. 20. CRC FLOSS DAB tools usage "In the beginning... was the command line" CRC-OpenMokast CRC-DabMod CRC-Dwap CRC-DabMux DAB multiplex overview Simple configuration Configuring outputs Configuring inputs Configuring services information Complex configuration
  21. 21. DAB Multiplex
  22. 22. CRC-DabMux Flowgraph
  23. 23. Simple configuration#!/bin/bashFREQUENCY=1459792000CRC-DabMux -A "/usr/share/crc-dabmux/CRC pub.mp2" -S -C -O fifo:///dev/stdout |CRC-DabMod -r3200000 -c128000000 -g1 |CRC-Dwap.py -r3200000 -u -f${FREQUENCY}
  24. 24. Service information#!/bin/bashFREQUENCY=1459792000CRC-DabMux -i 0xc000 -L "CRC Ensemble" -l "CRC" -A "/usr/share/crc-dabmux/CRC pub.mp2" -S -L "CRC Service" -l "CRC Svc" -C -O fifo:///dev/stdout | CRC-DabMod -r3200000 -c128000000 -g1 | CRC-Dwap.py -r3200000 -u -f${FREQUENCY}
  25. 25. Complex configurationCRC-DabMux -i 0xc000 -L "CRC Ensemble" -l "CRC" -A "/usr/share/crc-dabmux/CRC pub.mp2" -S -L "CRC DAB" -l "CRC DAB" -C -F "/usr/share/crc-dabmux/CRC pub-40k.lfa" -b 40 -S -L "CRC DAB+" -l "CRC DAB+" -C -M "CrcYouTube_AAC.ts" -b 384 -S -L "CRC DMB" -C -t 24 -O fifo:///dev/stdout | CRC-DabMod -r3200000 -c128000000 -g1 | CRC-Dwap.py -r3200000 -u -f${FREQUENCY}
  26. 26. Service encoding Audio Multimedia
  27. 27. Service encoding Audio DAB DAB+ Celt Internet source Multimedia
  28. 28. CRC-Dabplus installation$ tar xzf crc-dabplus-distrib-{version}.tar.gz$ sudo dpkg -i crc-dabplus-{version}/packages/*.deb
  29. 29. Testing audio cards$ crc-dabplus -i card://listAvailable capture card devices:hw:0hw:0,0hw:0,0,0 (name: HDA Generic)$ gst-launch alsasrc device=hw:0 ! audio/x-raw-int,width=16,rate=48000,channels=2 ! alsasink sync=false
  30. 30. DAB+ real-time encodingif [ ! -e fifo ]; then mkfifo fifo; fiCRC-DabMux -F fifo -k -b 32 -S -C -O fifo:///dev/stdout | CRC-DabMod -r3200000 -c128000000 -g1 | CRC-Dwap.py -r3200000 -u -f${FREQUENCY} &crc-dabplus -i card:// -o file://fifo -b 32 -c 2wait
  31. 31. DAB real-time encodingCRC-DabMux -F fifo -k -b 192 -S -C ...gst-launch alsasrc device=hw:0 ! audioconvert ! audioresample ! audio/x-raw-int,width=16,rate=48000,channels=2 ! filesink location=/dev/stdout | toolame -s 48 -e -r -D 0 -b 192 - fifo &
  32. 32. CELT real-time encodingCRC-DabMux -D fifo://fifo -b 96 -S -C ...gst-launch alsasrc device=plughw:0 ! audio/x-raw-int,width=16,rate=48000,channels=2 ! filesink location=/dev/stdout | celtenc --rate 48000 --stereo --framesize 576 --bitrate 94 - - | DabCeltCoder -E -b 96 -o fifo &
  33. 33. Internet stream real-time encodingCRC-DabMux -F fifo -k -b 64 -A ... -S -C -C -i0 -t60 -f2 -d ...mpg123 -w - --no-icy-meta http://maxxima.mine.nu:8000 | crc-dabplus -o file://fifo -b 64 &
  34. 34. Service encoding Audio Multimedia DLS DMB Slideshow
  35. 35. Slideshow real-time encodingCRC-DabMux -P fifo -k -b 32 -A ... -S -C -C -i0 -t60 -f2 -d ...CRC-SlideShow {inbox_dir} -o fifo -p 6 -n -b 32 &
  36. 36. Other modulations FM DRM
  37. 37. Other modulations FM Tx Rx Android DRM
  38. 38. Other modulations FM DRM Tx Rx
  39. 39. Installing DREAM# Src: http://sourceforge.net/apps/mediawiki/drm$ sudo apt-get isntall libasound2-dev libhamlib-dev fftw-devlibqwt-dev libsndfile1-dev$ wget http://downloads.sourceforge.net/project/drm/drm/1.12b/drm-1-12b.tar.gz$ tar xzf drm-1-12b.tar.gz
  40. 40. Installing DREAM: FAAD2$ wget http://downloads.sourceforge.net/faac/faad2-2.7.tar.gz$ tar xzf faad2-2.7.tar.gz$ cd faad2-2.7$ . bootstrap$ ./configure --disbaled-shared -without-xmms --with-drm --without-mpeg4ip$ make$ cp include/faad.h include/neaacdec.h ../drm/libs$ cp libfaad/.libs/libfaad.a ../drm/libs$ cd ..
  41. 41. Installing DREAM: FAAC$ wget http://downloads.sourceforge.net/faac/faac-1.28.tar.gz$ tar xzf faac-1.28.tar.gz$ cd faac-1.28$ . bootstrap$ ./configure --with-pic --disable-shared --without-mp4v2 --enable-drm$ make$ cp include/faaccfg.h include/faac.h ../drm/libs$ cp libfaac/.libs/libfaac.a ../drm/libs$ cd ..
  42. 42. Installing DREAM:DREAM$ cd drm$ . bootstrap$ ./configure$ make$ sudo cp linux/drm /usr/local/bin/dream
  43. 43. Conclusion GPL usage TODO

×