<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.opendigitalradio.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Tipok</id>
	<title>OpenDigitalRadio - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.opendigitalradio.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Tipok"/>
	<link rel="alternate" type="text/html" href="https://wiki.opendigitalradio.org/Special:Contributions/Tipok"/>
	<updated>2026-04-26T01:29:30Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.35.14</generator>
	<entry>
		<id>https://wiki.opendigitalradio.org/index.php?title=Ensemble_Transport_Interface&amp;diff=1152</id>
		<title>Ensemble Transport Interface</title>
		<link rel="alternate" type="text/html" href="https://wiki.opendigitalradio.org/index.php?title=Ensemble_Transport_Interface&amp;diff=1152"/>
		<updated>2014-06-22T18:18:12Z</updated>

		<summary type="html">&lt;p&gt;Tipok: desc for german sat eti stream&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Ensemble Transport Interface (ETI) is a standardised output stream from a DAB/DAB+/T-DMB multiplexer. It consists of a 2Mbit/s synchronous stream. Network adaptation is defined for G.703 lines (E1) that is the typical physical interface used between the multiplexer and DAB OFDM modulator.&lt;br /&gt;
The ETI stream can also be recorded to a file for capture and replay.&lt;br /&gt;
&lt;br /&gt;
Recently WorldDMB developped an adaptation of ETI for IP, called EDI (Encapsulated DAB Interface). &lt;br /&gt;
&lt;br /&gt;
ETI is standardized at ETSI: EN 300 799&lt;br /&gt;
&lt;br /&gt;
===ETI Layers===&lt;br /&gt;
The main layer is ETI-LI, it contains 24ms frame of DAB multiplex data. This logical frame may be incapsulated into:&lt;br /&gt;
* ETI-NI (G.703) - The simplest transport interface (just added sync words at the beginning and padding at the end). It have fixed packet size of 6144 bytes, and fixed bitrate of 2Mbit/s.&lt;br /&gt;
* ETI-NI (V.11) - Same as G.703 but with variable frame size and bitrate.&lt;br /&gt;
* ETI-NA (G.704) - More complex incapsulation method for E1/T1 interface. Have fixed bitrate of 2Mbit/s (with all overhead). Have Reed-Solomon forwarded error correction code 226 or 235 of 240 bytes. Packet size is fixed to 5592 or 5376 bytes (depending of error correction mode). This layer is used for satellite distribution of DAB stream.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===ETI satellite distribution===&lt;br /&gt;
Some provides are distributing ETI streams by incapsulation of it into MPEG-TS. That streams may also be:&lt;br /&gt;
* Not bit-aligned to transport stream.&lt;br /&gt;
* May be inverted.&lt;br /&gt;
* Transport stream may be simulated by adding only 0x47 TS-sync byte at the beginning of each 188 byte packed, and the rest of it - is ETI-NA.&lt;br /&gt;
&lt;br /&gt;
===ETI conversion to http===&lt;br /&gt;
To convert ETI-NI stream to HTTP (realy to icecast2) eti_ni2http application from eti-tools may be used.&lt;br /&gt;
&lt;br /&gt;
===Tools===&lt;br /&gt;
* [http://mmbtools.crc.ca/content/view/25/49/ CRC ETI Streamer]: tool developped by [[CRC]] for replaying ETI file on an E1/G.703 card&lt;br /&gt;
* [https://github.com/piratfm/eti-tools eti-tools]:  eti extractor from MPEG-TS and NA-to-NI converter and HTTP-icecast streamer.&lt;/div&gt;</summary>
		<author><name>Tipok</name></author>
	</entry>
	<entry>
		<id>https://wiki.opendigitalradio.org/index.php?title=Ensemble_Transport_Interface&amp;diff=1005</id>
		<title>Ensemble Transport Interface</title>
		<link rel="alternate" type="text/html" href="https://wiki.opendigitalradio.org/index.php?title=Ensemble_Transport_Interface&amp;diff=1005"/>
		<updated>2013-09-18T00:01:34Z</updated>

		<summary type="html">&lt;p&gt;Tipok: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Ensemble Transport Interface (ETI) is a standardised output stream from a DAB/DAB+/T-DMB multiplexer. It consists of a 2Mbit/s synchronous stream. Network adaptation is defined for G.703 lines (E1) that is the typical physical interface used between the multiplexer and DAB OFDM modulator.&lt;br /&gt;
The ETI stream can also be recorded to a file for capture and replay.&lt;br /&gt;
&lt;br /&gt;
Recently WorldDMB developped an adaptation of ETI for IP, called EDI (Encapsulated DAB Interface). &lt;br /&gt;
&lt;br /&gt;
ETI is standardized at ETSI: EN 300 799&lt;br /&gt;
&lt;br /&gt;
===ETI Layers===&lt;br /&gt;
The main layer is ETI-LI, it contains 24ms frame of DAB multiplex data. This logical frame may be incapsulated into:&lt;br /&gt;
* ETI-NI (G.703) - The simplest transport interface (just added sync words at the beginning and padding at the end). It have fixed packet size of 6144 bytes, and fixed bitrate of 2Mbit/s.&lt;br /&gt;
* ETI-NI (V.11) - Same as G.703 but with variable frame size and bitrate.&lt;br /&gt;
* ETI-NA (G.704) - More complex incapsulation method for E1/T1 interface. Have fixed bitrate of 2Mbit/s (with all overhead). Have Reed-Solomon forwarded error correction code 226 or 235 of 240 bytes. Packet size is fixed to 5592 or 5376 bytes (depending of error correction mode). This layer is used for satellite distribution of DAB stream.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===ETI satellite distribution===&lt;br /&gt;
Some provides are distributing ETI streams by incapsulation of it into MPEG-TS. That streams may also be:&lt;br /&gt;
* Not bit-aligned to transport stream.&lt;br /&gt;
* May be inverted.&lt;br /&gt;
&lt;br /&gt;
===ETI conversion to http===&lt;br /&gt;
To convert ETI-NI stream to HTTP (realy to icecast2) eti_ni2http application from eti-tools may be used.&lt;br /&gt;
&lt;br /&gt;
===Tools===&lt;br /&gt;
* [http://mmbtools.crc.ca/content/view/25/49/ CRC ETI Streamer]: tool developped by [[CRC]] for replaying ETI file on an E1/G.703 card&lt;br /&gt;
* [https://github.com/piratfm/eti-tools eti-tools]:  eti extractor from MPEG-TS and NA-to-NI converter and HTTP-icecast streamer.&lt;/div&gt;</summary>
		<author><name>Tipok</name></author>
	</entry>
	<entry>
		<id>https://wiki.opendigitalradio.org/index.php?title=Introduction_on_DAB/DAB%2B&amp;diff=1004</id>
		<title>Introduction on DAB/DAB+</title>
		<link rel="alternate" type="text/html" href="https://wiki.opendigitalradio.org/index.php?title=Introduction_on_DAB/DAB%2B&amp;diff=1004"/>
		<updated>2013-09-16T14:49:13Z</updated>

		<summary type="html">&lt;p&gt;Tipok: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DAB, DAB+ and T-DMB European digital radio and mobile television standards share the same transmission system. It based on [http://en.wikipedia.org/wiki/Orthogonal_frequency-division_multiplexing OFDM] modulation and use 1.5MHz of spectrum in VHF television band 3 (or L-band in SHF). A transmitter is broadcasting a set of programs, called a multiplex. The system has been designed for mobile use and is robust up to 300km/h.&lt;br /&gt;
&lt;br /&gt;
With the development of &amp;#039;&amp;#039;&amp;#039;[http://mmbtools.crc.ca MMBTools set made by CRC]&amp;#039;&amp;#039;&amp;#039;, it is now possible to run a full transmission infrastructure on a laptop running linux and using a [http://en.wikipedia.org/wiki/USRP USRP] as [[RF]] hardware (with [[wikipedia:gnuradio|gnuradio]]) or any other similar device.&lt;br /&gt;
&lt;br /&gt;
The transmission chain can be divided in 4: &lt;br /&gt;
*The encoding: encoding the sound to [[wikipedia:MPEG-1 Audio Layer II|MPEG-2 Layer II]] for DAB, [[wikipedia:High-Efficiency Advanced Audio Coding|MPEG-4 HE-AACv2]] for DAB+ or video in MPEG-4 H.264 for T-DMB.&lt;br /&gt;
*The Multiplexer: gather different streams, produce necessary signalling and output a single 2Mbit/s stream in ETI format ([[Ensemble Transport Interface]]).&lt;br /&gt;
*The Modulator: take the ETI stream and produce the complex [[wikipedia:baseband|baseband]] OFDM signal ready for upconvert at the desired radio frequency.&lt;br /&gt;
*The [[RF]] transmission performed by the USRP using appropriate RF daughterboards (Basic TX or modified RFX400).&lt;br /&gt;
&lt;br /&gt;
However thank to the modular approach from these tools it is possible to interface it with other implementations. If there&amp;#039;s no other software OFDM DAB modulator implementation at the moment, for the encoding it is possible to re-use [[Toolame]] that is an implementation of MPEG-2 Layer II.&lt;/div&gt;</summary>
		<author><name>Tipok</name></author>
	</entry>
	<entry>
		<id>https://wiki.opendigitalradio.org/index.php?title=Ensemble_Transport_Interface&amp;diff=1003</id>
		<title>Ensemble Transport Interface</title>
		<link rel="alternate" type="text/html" href="https://wiki.opendigitalradio.org/index.php?title=Ensemble_Transport_Interface&amp;diff=1003"/>
		<updated>2013-09-16T14:47:34Z</updated>

		<summary type="html">&lt;p&gt;Tipok: add modes description&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Ensemble Transport Interface (ETI) is a standardised output stream from a DAB/DAB+/T-DMB multiplexer. It consists of a 2Mbit/s synchronous stream. Network adaptation is defined for G.703 lines (E1) that is the typical physical interface used between the multiplexer and DAB OFDM modulator.&lt;br /&gt;
The ETI stream can also be recorded to a file for capture and replay.&lt;br /&gt;
&lt;br /&gt;
Recently WorldDMB developped an adaptation of ETI for IP, called EDI (Encapsulated DAB Interface). &lt;br /&gt;
&lt;br /&gt;
ETI is standardized at ETSI: EN 300 799&lt;br /&gt;
&lt;br /&gt;
===ETI Layers===&lt;br /&gt;
The main layer is ETI-LI, it contains 24ms frame of DAB multiplex data. This logical frame may be incapsulated into:&lt;br /&gt;
* ETI-NI (G.703) - The simplest transport interface (just added sync words at the beginning and padding at the end). It have fixed packet size of 6144 bytes, and fixed bitrate of 2Mbit/s.&lt;br /&gt;
* ETI-NI (V.11) - Same as G.703 but with variable frame size and bitrate.&lt;br /&gt;
* ETI-NA (G.704) - More complex incapsulation method for E1/T1 interface. Have fixed bitrate of 2Mbit/s (with all overhead). Have Reed-Solomon forwarded error correction code 226 or 235 of 240 bytes. Packet size is fixed to 5592 or 5376 bytes (depending of error correction mode). This layer is used for satellite distribution of DAB stream.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===ETI satellite distribution===&lt;br /&gt;
Some provides are distributing ETI streams by incapsulation of it into MPEG-TS. That streams may also be:&lt;br /&gt;
* Not bit-aligned to transport stream.&lt;br /&gt;
* May be inverted.&lt;br /&gt;
&lt;br /&gt;
===Tools===&lt;br /&gt;
* [http://mmbtools.crc.ca/content/view/25/49/ CRC ETI Streamer]: tool developped by [[CRC]] for replaying ETI file on an E1/G.703 card&lt;br /&gt;
* [https://github.com/piratfm/eti-tools ts2eti and eti_na2ni]:  eti extractor from MPEG-TS and NA-to-NI converter.&lt;/div&gt;</summary>
		<author><name>Tipok</name></author>
	</entry>
	<entry>
		<id>https://wiki.opendigitalradio.org/index.php?title=DAB_multiplexing&amp;diff=1002</id>
		<title>DAB multiplexing</title>
		<link rel="alternate" type="text/html" href="https://wiki.opendigitalradio.org/index.php?title=DAB_multiplexing&amp;diff=1002"/>
		<updated>2013-09-16T12:17:21Z</updated>

		<summary type="html">&lt;p&gt;Tipok: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The multiplexer gather different program streams (DAB, DAB+ or T-DMB), produces necessary signalling and output a single 2Mbit/s stream in [[Ensemble Transport Interface|ETI format]] (Ensemble Transport Interface).&lt;br /&gt;
&lt;br /&gt;
===Multiplexing with CRC-DabMux===&lt;br /&gt;
&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;[[CRC-DabMux]]&amp;#039;&amp;#039;&amp;#039; Free/open source DAB/DAB+/T-DMB multiplexer from CRC. &lt;br /&gt;
&lt;br /&gt;
This multiplexer can work with a professional modulator by using a E1 G.703 interface card. For example, Farsite is manufacturing an [http://www.farsite.com/synchronous_X.21_RS422_V.35_RS530_PCI_PCIe_cards/farsync_e1_G.703_G.704_pci_card_linux_windows.shtml E1 card supported under linux]&lt;br /&gt;
&lt;br /&gt;
====Live multiple input====&lt;br /&gt;
The multiplexer takes files as input. Standard input (/dev/stdin) can be used to get an encoded stream as input. In order to input many live streams, it is necessary to use FIFO files (also called &amp;quot;named pipe&amp;quot;) created with &amp;quot;mkfifo&amp;quot; unix command.&lt;br /&gt;
&lt;br /&gt;
Example, with 3 DAB 128kbps channels (1.ff to 3.ff are the FIFO files)&lt;br /&gt;
 CRC-DabMux -L &amp;quot;LabelSuisse&amp;quot;  -A 1.ff -b 128 -i 1 -S -L &amp;quot;Label1&amp;quot; -C \&lt;br /&gt;
 -A 2.ff -b 128 -i 2 -S -L &amp;quot;Label2&amp;quot; -C \&lt;br /&gt;
 -A 3.ff -b 128 -i 3 -S -L &amp;quot;Label3&amp;quot; -C \&lt;br /&gt;
 -O fifo:///dev/stdout&lt;br /&gt;
&lt;br /&gt;
Example with 4 DAB+ inputs on one DAB input, non-blocking file input mode is used with option &amp;quot;-k&amp;quot; to avoid incomplete DAB+ frames from the encoder.&lt;br /&gt;
 CRC-DabMux -L &amp;quot;TuxMux&amp;quot;  \&lt;br /&gt;
 -A 1.ff -b 128 -i 10 -S -L &amp;quot;L2_128&amp;quot; -C \&lt;br /&gt;
 -F 2.ff -k -b 48 -i 2 -S -L &amp;quot;AAC48&amp;quot; -C \&lt;br /&gt;
 -F 3.ff -k -b 64 -i 3 -S -L &amp;quot;AAC64&amp;quot; -C \&lt;br /&gt;
 -F 4.ff -k -b 128 -i 4 -S -L &amp;quot;AAC128&amp;quot; -C \&lt;br /&gt;
 -O fifo:///dev/stdout&lt;br /&gt;
&lt;br /&gt;
===Other projects=== &lt;br /&gt;
*[http://labs.radionova.no/category/dab/ Nova Radio labs opendab project in Norway]&lt;/div&gt;</summary>
		<author><name>Tipok</name></author>
	</entry>
	<entry>
		<id>https://wiki.opendigitalradio.org/index.php?title=FDK-AAC-DABplus&amp;diff=1001</id>
		<title>FDK-AAC-DABplus</title>
		<link rel="alternate" type="text/html" href="https://wiki.opendigitalradio.org/index.php?title=FDK-AAC-DABplus&amp;diff=1001"/>
		<updated>2013-09-11T17:50:45Z</updated>

		<summary type="html">&lt;p&gt;Tipok: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Installation ==&lt;br /&gt;
This is open-source version of DAB+ encoder.&lt;br /&gt;
&lt;br /&gt;
To build DAB+ encoder, you need fec library from crc.ca website: http://mmbtools.crc.ca/content/view/39/65/, follow instrutcions to install it to the system. If you already build crc-dabmux from sources, then this library is already installed. Next, download and build encoder:&lt;br /&gt;
&lt;br /&gt;
 git clone https://github.com/piratfm/fdk-aac-dabplus.git&lt;br /&gt;
 cd fdk-aac-dabplus&lt;br /&gt;
 ./bootstrap&lt;br /&gt;
 ./configure --enable-example&lt;br /&gt;
 make&lt;br /&gt;
 sudo make install&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Encoding samples ==&lt;br /&gt;
After successful installation, DAB+ encoding may be used:&lt;br /&gt;
&lt;br /&gt;
Live Stream enconding and preparing for DAB mux:&lt;br /&gt;
 arecord -t raw -f S16_LE -c 2 -r 48000 -D plughw:CARD=Loopback,DEV=0,SUBDEV=0 | \&lt;br /&gt;
 aac-enc-dabplus -b 24 -f raw -c 2 -r 48000 -i /dev/stdin -o /dev/stdout 2&amp;gt;/dev/null | \&lt;br /&gt;
 mbuffer -q -m 10k -P 100 -s 360 &amp;gt; station1.fifo&lt;br /&gt;
&lt;br /&gt;
Wave file enconding and preparing for crc-dabmux:&lt;br /&gt;
 aac-enc-dabplus -a -b 64 -i wave_file.wav -o station1.dabp&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Problems solving ==&lt;br /&gt;
If crc-dabmux generates lot of errors like this:&lt;br /&gt;
 &amp;lt;2&amp;gt; ERROR: Incomplete DAB+ frame! 136 != 360&lt;br /&gt;
 &amp;lt;5&amp;gt; reach end of file -&amp;gt; rewinding&lt;br /&gt;
 &amp;lt;2&amp;gt; ERROR: Can&amp;#039;t rewind file&lt;br /&gt;
 &amp;lt;6&amp;gt; ETI frame number: 228&lt;br /&gt;
&lt;br /&gt;
Then the stream have to be buffered before giving it to muxer, this additional buffer installed between encoder and fifo. To calculate proper block size for mbuffer (&amp;quot;-s&amp;quot; parameter), the table below may be used:&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot;&lt;br /&gt;
!DAB+ Stream bitrate, kbps&lt;br /&gt;
!Block size, bytes&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|240&lt;br /&gt;
|-&lt;br /&gt;
|24&lt;br /&gt;
|360&lt;br /&gt;
|-&lt;br /&gt;
|32&lt;br /&gt;
|480&lt;br /&gt;
|-&lt;br /&gt;
|48&lt;br /&gt;
|720&lt;br /&gt;
|-&lt;br /&gt;
|56&lt;br /&gt;
|840&lt;br /&gt;
|-&lt;br /&gt;
|64&lt;br /&gt;
|960&lt;br /&gt;
|-&lt;br /&gt;
|72&lt;br /&gt;
|1080&lt;br /&gt;
|-&lt;br /&gt;
|128&lt;br /&gt;
|1920&lt;br /&gt;
|-&lt;br /&gt;
|160&lt;br /&gt;
|2400 &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
In example above, for stream with bitrate 24 kbps, mbuffer size setted to 360 bytes. This trick helping to solve problem.&lt;/div&gt;</summary>
		<author><name>Tipok</name></author>
	</entry>
	<entry>
		<id>https://wiki.opendigitalradio.org/index.php?title=FDK-AAC-DABplus&amp;diff=1000</id>
		<title>FDK-AAC-DABplus</title>
		<link rel="alternate" type="text/html" href="https://wiki.opendigitalradio.org/index.php?title=FDK-AAC-DABplus&amp;diff=1000"/>
		<updated>2013-09-11T17:45:06Z</updated>

		<summary type="html">&lt;p&gt;Tipok: Created page with &amp;quot;== Installation == This is open-source version of DAB+ encoder.  To build DAB+ encoder, you need fec library from crc.ca website: http://mmbtools.crc.ca/content/view/39/65/, foll…&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Installation ==&lt;br /&gt;
This is open-source version of DAB+ encoder.&lt;br /&gt;
&lt;br /&gt;
To build DAB+ encoder, you need fec library from crc.ca website: http://mmbtools.crc.ca/content/view/39/65/, follw instrutcions to install it to the system. If you already build crc-dabmux, then this library is already installed. Next, download and build:&lt;br /&gt;
&lt;br /&gt;
 git clone https://github.com/piratfm/fdk-aac-dabplus.git&lt;br /&gt;
 cd fdk-aac-dabplus&lt;br /&gt;
 ./bootstrap&lt;br /&gt;
 ./configure --enable-example&lt;br /&gt;
 make&lt;br /&gt;
 sudo make install&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Encoding samples ==&lt;br /&gt;
After successful installation, DAB+ encoding may be used:&lt;br /&gt;
&lt;br /&gt;
Live Stream enconding and preparing for DAB mux:&lt;br /&gt;
 arecord -t raw -f S16_LE -c 2 -r 48000 -D plughw:CARD=Loopback,DEV=0,SUBDEV=0 | \&lt;br /&gt;
 aac-enc-dabplus -b 24 -f raw -c 2 -r 48000 -i /dev/stdin -o /dev/stdout 2&amp;gt;/dev/null | \&lt;br /&gt;
 mbuffer -q -m 10k -P 100 -s 360 &amp;gt; station1.fifo&lt;br /&gt;
&lt;br /&gt;
Wave file enconding and preparing for crc-dabmux:&lt;br /&gt;
 aac-enc-dabplus -a -b 64 -i wave_file.wav -o station1.dabp&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Problems solving ==&lt;br /&gt;
If crc-dabmux generates lot of errors like this:&lt;br /&gt;
 &amp;lt;2&amp;gt; ERROR: Incomplete DAB+ frame! 136 != 360&lt;br /&gt;
 &amp;lt;5&amp;gt; reach end of file -&amp;gt; rewinding&lt;br /&gt;
 &amp;lt;2&amp;gt; ERROR: Can&amp;#039;t rewind file&lt;br /&gt;
 &amp;lt;6&amp;gt; ETI frame number: 228&lt;br /&gt;
&lt;br /&gt;
Then the stream have to be buffered before giving it to muxer. To make stream better for crc-dabmux, additional buffer between encoder and fifo is needed. To calculate proper block size to mbuffer &amp;quot;-s&amp;quot; param, table below may be used:&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot;&lt;br /&gt;
!DAB+ Stream bitrate, kbps&lt;br /&gt;
!Block size, bytes&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|240&lt;br /&gt;
|-&lt;br /&gt;
|24&lt;br /&gt;
|360&lt;br /&gt;
|-&lt;br /&gt;
|32&lt;br /&gt;
|480&lt;br /&gt;
|-&lt;br /&gt;
|48&lt;br /&gt;
|720&lt;br /&gt;
|-&lt;br /&gt;
|56&lt;br /&gt;
|840&lt;br /&gt;
|-&lt;br /&gt;
|64&lt;br /&gt;
|960&lt;br /&gt;
|-&lt;br /&gt;
|72&lt;br /&gt;
|1080&lt;br /&gt;
|-&lt;br /&gt;
|128&lt;br /&gt;
|1920&lt;br /&gt;
|-&lt;br /&gt;
|160&lt;br /&gt;
|2400 &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
In example above, for stream with bitrate 24 kbps, mbuffer size setted to 360 bytes. This trick heling to solve problem.&lt;/div&gt;</summary>
		<author><name>Tipok</name></author>
	</entry>
	<entry>
		<id>https://wiki.opendigitalradio.org/index.php?title=DAB/DAB%2B_encoding&amp;diff=999</id>
		<title>DAB/DAB+ encoding</title>
		<link rel="alternate" type="text/html" href="https://wiki.opendigitalradio.org/index.php?title=DAB/DAB%2B_encoding&amp;diff=999"/>
		<updated>2013-09-11T17:04:44Z</updated>

		<summary type="html">&lt;p&gt;Tipok: add fdk-dabplus&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Encoding the sound to [[wikipedia:MPEG-1 Audio Layer II|MPEG-2 Layer II]] for DAB, [[wikipedia:High-Efficiency Advanced Audio Coding|MPEG-4 HE-AACv2]] for DAB+ or video in MPEG-4 H.264 for T-DMB before feeding it to the multiplexer.&lt;br /&gt;
&lt;br /&gt;
==DAB encoding==&lt;br /&gt;
===DAB audio encoding with toolame===&lt;br /&gt;
&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;[[toolame]]&amp;#039;&amp;#039;&amp;#039; MPEG-Layer II encoder (DAB)&lt;br /&gt;
&lt;br /&gt;
====Using toolame with Jack====&lt;br /&gt;
Toolame doesn&amp;#039;t support jack by default, we use arecord with ALSA emulation to get the raw PCM stream. See [[Mapping of jack source to ALSA]] for instructions. It is a dirty workaround, it is foreseen to find a better way in the future for example by modifying toolame to support jack:&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 arecord -t raw -f S16_LE -c 2 -r 48000 -D jackplug |toolame -s 48 -D 4 -b 128 /dev/stdin ./1.ff&lt;br /&gt;
&lt;br /&gt;
Another possibility is to use [http://rg42.org/oss/jackstdio/start jack-stdout tool] that grab samples from jack and send them to the standard output&lt;br /&gt;
 &lt;br /&gt;
 jack-stdout system:capture_1 system:capture_2 |toolame -s 48 -D 4 -b 192 /dev/stdin ./3.ff&lt;br /&gt;
&lt;br /&gt;
====toolame modified for Jack input (BETA)====&lt;br /&gt;
&lt;br /&gt;
Toolame has been modified to support JACK (BETA), rendering the dirty workaround mentioned below unnecessary. See [[Toolame#JACK_version]] for more info.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 toolame -D 4 -b 128 -j -n toolame1 ./1.ff&lt;br /&gt;
&lt;br /&gt;
==DAB+ encoding==&lt;br /&gt;
===DAB+ audio encoding with crc-dabplus===&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;[[CRC-dabplus]]&amp;#039;&amp;#039;&amp;#039; HE-AAC encoder (DAB+) from CRC (warning, it is not free/open source because of royalty)&lt;br /&gt;
&lt;br /&gt;
Example streaming one radio and with a buffer to compensate for bursty output from encoder&lt;br /&gt;
 crc-dabplus -i souphttpsrc://location=http://maxxima.mine.nu:8000 -g -m -c 2 -b 48 -o file:///dev/stdout |mbuffer -m 100k -P 100  &amp;gt;output_fifo &lt;br /&gt;
&lt;br /&gt;
===DAB+ audio encoding with fdk-aac-dabplus===&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;[[fdk-aac-dabplus]]&amp;#039;&amp;#039;&amp;#039; HE-AAC encoder (DAB+), originally developed by Fraunhofer Institute, open source version from android tree.&lt;br /&gt;
&lt;br /&gt;
Example streaming one radio and with a buffer to compensate for bursty output from encoder&lt;br /&gt;
 mpg321 -r 48000 &amp;quot;http://pub1.di.fm:80/di_trance&amp;quot; -s 2&amp;gt;/dev/null | \&lt;br /&gt;
 aac-enc-dabplus -b 72 -f raw -c 2 -r 48000 -i /dev/stdin -o /dev/stdout 2&amp;gt;/dev/null | \&lt;br /&gt;
 mbuffer -q -m 100k -P 100 -s 1080 &amp;gt; output_fifo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====jack input====&lt;br /&gt;
&lt;br /&gt;
crc-dabplus uses Gstreamer for input/output.&lt;br /&gt;
&lt;br /&gt;
Example of jackplug input (ALSA emulation), encoding at 48kbps, output to a FIFO file:&lt;br /&gt;
 crc-dabplus -i card://jackplug -g -c 2 -b 48 -o file://2.ff&lt;br /&gt;
&lt;br /&gt;
Similar example but with DLS input from TCP on port 12000&lt;br /&gt;
 crc-dabplus -i card://jackplug -g -c 2 -b 80 -d tcpserver://:12000 -p 28 -t dls -o file://4.ff&lt;br /&gt;
&lt;br /&gt;
===Tools for data services encoding===&lt;br /&gt;
&lt;br /&gt;
*[[CRC-SlideShow]] : slideshow generator from CRC.&lt;br /&gt;
*[http://code.google.com/p/dab-epg/ DAB-EPG API] from Global Radio Labs (never tested)&lt;br /&gt;
&lt;br /&gt;
==Decoding Internet stream==&lt;br /&gt;
Here are some simple way to get internet radio stream as input and decode them into raw PCM samples to feed DAB/DAB+ encoders&lt;br /&gt;
&lt;br /&gt;
===mpg123 input===&lt;br /&gt;
&lt;br /&gt;
&amp;quot;mpg123&amp;quot; can be used to take Internet radio stream and convert them from mp3 to raw PCM samples. Be careful, it has been noticed that earlier version have a memory leak when resampling. We use version 1.4.3 to avoid the problem.&lt;br /&gt;
&lt;br /&gt;
Example that decode an mp3 stream, resample it to 48kHz and output the raw samples to stdout:&lt;br /&gt;
 mpg123 -b 1024 -r 48000 -s http://maxxima.mine.nu:8000&lt;br /&gt;
&lt;br /&gt;
===mplayer===&lt;br /&gt;
&lt;br /&gt;
simple mplayer command for jack output&lt;br /&gt;
&lt;br /&gt;
 mplayer -ao jack http://maxxima.mine.nu:8000&lt;/div&gt;</summary>
		<author><name>Tipok</name></author>
	</entry>
</feed>