Ginga (middleware)
Middleware for Brazilian and international digital TV systems.
Wikipedia / Wikimedia Commons
Ginga is the middleware specification for the Nipo-Brazilian Digital Television System (SBTVD) and is also an ITU-T Recommendation for IPTV Services. It is considered in ITU-T recommendations for Cable Broadcast services and by ITU-R for Terrestrial Broadcast services. Ginga was developed based on standardized technologies but mainly on innovations by Brazilian researchers, and its current reference implementation was released under the GPL license.
- field
- Middleware for digital television and IPTV
- developed_by
- Telemídia Lab (PUC-Rio) and LAViD (UFPB)
- subsystems
- Ginga-NCL (declarative) and Ginga-J (imperative)
- standards
- ITU-T Recommendation, ABNT 15606, ITU-R BT.1889, BT.1699, BT.1722
- license
- GPL (reference implementation)
Lore & Background
Ginga is divided into two main integrated subsystems: Ginga-NCL, for declarative NCL applications, and Ginga-J, for imperative Java applications. In the Brazilian Terrestrial Digital TV System and any other systems following ABNT 15606, Ginga-J is required in fixed receivers and optional in portable receivers. For IPTV services following ITU-T H.761, only Ginga-NCL is required for any terminal type.
Reader's Guide
Ginga's significance lies in its role as the middleware for the Brazilian digital television system and its adoption by international standards bodies. It enables interactive television applications through two programming paradigms, allowing both declarative (NCL) and imperative (Java) development. Its inclusion in ITU-T and ITU-R recommendations extends its influence beyond Brazil to global IPTV and cable broadcast services. The middleware's development by Brazilian research institutions and its open-source reference implementation under GPL have fostered a community around it, though its adoption varies by receiver type and service. Ginga represents a national technological effort to create a digital TV standard with local innovations.
Did You Know?
- Ginga is divided into two subsystems: Ginga-NCL (declarative) and Ginga-J (imperative).
- Ginga is an ITU-T Recommendation for IPTV Services and is considered in ITU-T recommendations for Cable Broadcast services.
- Ginga-J is required in fixed receivers and optional in portable receivers for systems following ABNT 15606.
- Ginga was developed by Telemídia Lab (PUC-Rio) and LAViD (UFPB).
Frequently Asked Questions
What is Ginga (middleware)?
Ginga is the middleware specification that powers Brazil's SBTVD digital television system and also functions as an ITU-T Recommendation for IPTV services. It has additionally been considered in ITU-T recommendations for cable broadcast and by ITU-R for terrestrial broadcast.
Who developed Ginga (middleware)?
It was created by the Telemídia Lab at PUC-Rio and the LAViD group at UFPB, building on standardized technologies but drawing heavily on original innovations from Brazilian researchers.
What are the two subsystems of Ginga (middleware)?
The architecture splits into Ginga-NCL, a declarative subsystem, and Ginga-J, an imperative subsystem, together covering both scene-description and application-logic programming for interactive TV.
Which standards does Ginga (middleware) conform to?
It is codified as an ITU-T Recommendation and the Brazilian ABNT 15606 standard, and it is referenced by ITU-R documents BT.1889, BT.1699, and BT.1722 for terrestrial broadcast services.
Is the Ginga (middleware) reference implementation open source?
Yes. The current reference implementation was released under the GPL license, making the code freely available for study, modification, and redistribution.
More in Brazilian inventions 1-24
Spotted an error? Know more?
This is a living reference — every entry is fact-audited, and reader corrections feed straight into our audit queue. Suggest an edit · See this site's audit record
