First licensed open dab transmission
(→Event Pictures and video) |
(→Event Pictures and video) |
Revision as of 16:12, 13 October 2010
For the first time, the open source encoder, multiplexer, modulator designed by CRC (MMBTools) will be used for a licensed local transmission during Label Suisse festival for a performance done together with MXLabs.
Swiss Administration has granted a 8 channels DAB multiplex to be used on air on channel 10A during the festival between 17th to 19th September in Lausanne.
The installation will consist of a single PC running Linux and with a 8 channels soundcard and USRP doing the DAB encoding, multiplexing and modulation. This transmission will transmit in DAB the audio of a mosaic of 8 music bands that will be video projected for the performance. DAB Radios tuned to all these channels will then be spread all over the place and people will also receive free receivers.
It is already a long time that people are experimenting DAB transmission using CRC MMBTools and Open Software Defined Radio but it is is the first time it is used for a licensed transmission. This milestone demonstrate that digital radio has become democratized not only for experimentation but also for local or ultra-local transmission.
The installation consist of a recent AMD PC and a USRP Generic Software Radio Platform for the transmission. The software tools ar CRC MMBtools with custom linux scripts and python code.
More details details about the technical installation, pictures, etc to follow...
For more information: Mathias Coinchon (broadcast at opendigitalradio.org) or Stanislas Roehrich (http://www.maxxima.org).
Links:
See also:
Contents |
Setup
Hardware:
- dualcore AMD PC running (ubuntu) linux
- M audio delta 1010 soundcard
- USRP1 Universal Software Radio Peripheral
- Mini-circuits bandpass filter
Software:
- Jack open Audio connection kit
- arecord (from ALSA utils)
- Toolame open MPEG Layer II encoder
- CRC MMBtools open source DAB multiplexer: CRC-DabMux
- Non blocking buffer: bfr
- CRC MMBtools open source DAM modulator: CRC-DabMod
- Baseband USRP1 VHF player
Scripts
2 scripts were used, one for the multiplexer/modulator and the other for getting the sound stream and encode them
Stream and encode (example with 3 programs, definite script to be posted):
#!/bin/sh arecord -t raw -f S16_LE -c 2 -r 48000 -D jackplug1 |toolame -s 48 -D 4 -b 128 /dev/stdin ./1.ff & arecord -t raw -f S16_LE -c 2 -r 48000 -D jackplug2 |toolame -s 48 -D 4 -b 128 /dev/stdin ./2.ff & arecord -t raw -f S16_LE -c 2 -r 48000 -D jackplug3 |toolame -s 48 -D 4 -b 128 /dev/stdin ./3.ff &
.ff are FIFO files (names pipes) that were created using "mkfifo" command
Multiplexing, encoding, playout (example with 3 program, definite script to be posted)
CRC-DabMux -L "LabelSuisse" -A 1.ff -b 128 -i 1 -S -L "Label1" -C \ -A 2.ff -b 128 -i 2 -S -L "Label2" -C \ -A 3.ff -b 128 -i 3 -S -L "Label3" -C \ -O fifo:///dev/stdout |\ CRC-DabMod -f -g1 -r3200000 |\ bfr -p -b 32m -m 8m |\ coinwap_full3.py
(bfr is the buffer, coinwap_full3.py is the baseband player)
Conclusion
We could demonstrate that a local DAB multiplex can be made at very little cost using open source technologies.
However we discovered problems that need to be solved. The USRP was regularly freezing requiring the scripts to be relaunched. We have not been able to reproduce this problem in the lab but the origin is certainly a power supply problem in the presence of a dirty AC power distribution (as it is commonly found in festivals). We suspect also high heat in the box to be the cause of these unstabilities. For this reason, we will change the USRP power supply and improve the cooling of USRP (with heatsinks and better fan).
Event Pictures and video
Video of the performance:
- Working finally !