This site has informations about the Ginga middleware support in the Digital Radio Mondiale digital radio system


1.0 .........Introduction
2.0 .........Receiving DRM + Ginga
2.1 ...........Dream binaries
3.0 .........Transmitting
3.1 ...........DRMCS binaries
4.0 .........Ginga applications
4.7 ...........Station related content
4.8 ...........Integrated Broadcast Broadband application

1.0 Introduction

Ginga is a Brazilian developed middleware for the Brazilian Terrestrial Digital TV System, which is an evolution of the original Japanese ISDB-T, rebranded as ISDB-T International. The major differences between the Japanese and the International ISDB-T are the audio and video codecs, upgraded from MPEG 2 to MPEG 4, and the applications middleware, Ginga instead of BML (Broadcast Markup Language). The support for Ginga is getting wide, only in Brazil there are 65 million TV sets with Ginga installed, not counting the millions of cellphones with DTV. It's also used in other 13 countries in Latin America and one in Africa (Botswana, others considering).

The NCL language used to write Ginga applications. NCL is a declarative language for hypermedia-document authoring. The imperative language Lua can also be used as NCLua media objects.
The complete definition of Ginga transport over DRM and the formal language and middleware definitions are based in the ITU Recommendation H.761, and is available in the link below:
- Towards a Ginga-enabled Digital Radio Mondiale Broadcasting chain: Signaling and Definitions.

Other important references (in Portuguese) are:
- Rafael Diniz Master's dissertation: The NCL-DR Profile and the Ginga Middleware for the Brazilian Digital Radio System.
- Article: Transmission of Interactive Applications for the Ginga Middleware in the Context of the Brazilian Digital Radio System
- Digital Radio presentation

2.0 Receiving DRM + Ginga

The support for receiving DRM with a Ginga application is already committed to Dream (svn r997). The parameters used for the Ginga application are provisional (and highlighted in text), but likely not to change until standardisation. Ginga can be transmitted as Program Associated Data (PAD) of an audio service (tipical use), or as a data service. If transmitted as a data service, FAC Service Parameter should contain the following value:

For the SDC entity type 5 (Application Information):

Ginga uses the MOT protocol in it's Directory Mode. In the DirectoryExtension header the parameter DirectoryIndex is the most relevant and must be transmitted. The DirectoryIndex fields should follow the syntax:

Dream already has support for Ginga with the parameters above.

2.1 Dream binaries

For Debian 8 (Jessie), x86_64 (Intel/AMD 64 bits), place line below to your '/etc/apt/sources.list':

deb amd64/

To install Dream, type the commands below in a root console:

# apt-get update
# apt-get install dream

3.0 Transmitting

In order to create a DRM broadcast with a NCL application, the Content Server used should support the signaling defined in section 2.0.

The BBC developed DRMCS supports the MOT Directory Mode and all the required parameters can be set.

Configuration samples for NCL application transmission as PAD and as a data service are available here.

3.1 DRMCS binaries

Comming soon.

4.0 NCL application examples

This chapter has some test applications for Ginga Digital Radio demonstrations.

4.1. Advertisement

Can be embedded in any of the next subitens below, and also appear in fullscreen.

4.2. Public services

4.3. Content (music) related

4.5. Disaster alert

4.6. Traffic information

4.7. Station related content

Application: Radio Nacional da Amazonia example
Size (uncompressed): 20167 bytes
MDI Stream (in pcap format): demo1.pcap
Carousel period at 5.16 kbps: 31.2s
Typical use: MW, SW and VHF.


4.8. Integrated Broadcast Broadband application

Application: Telemidia IBB example
Size (uncompressed): 15969 bytes
Typical use: MW, SW and VHF


4.9. Distance education

Lab. Telemídia | DI | PUC-Rio