ABSTRACT
In this paper, we present the conversion of NCL to Smix and discuss its main implications. NCL is a declarative language for the specification of interactive multimedia presentations which was adopted by the ITU-T H.761 recommendation for interoperable IPTV services. Smix is a synchronous domain-specific language with a similar purpose, but with a simpler and more precise semantics. By implementing NCL over Smix, we bring to the former the notions of reaction and execution instants, and with them some benefits. From a practical perspective, we fix the semantics of the converted documents, get a leaner NCL player (the Smix interpreter), and simplify further conversions. From a systems-design perspective, the structured conversion of NCL to Smix helps us tame the complexity of mapping the user-oriented constructs of NCL into the machine-oriented primitives that realize them as a multimedia presentation. In the paper, we present NCL and Smix, discuss related work on document conversion, and detail the conversion process and a prototype implementation.
- ABNT 15606--2. Digital Terrestrial TV -- Data Coding and Transmission Specification for Digital Broadcasting -- Part 2: Ginga-NCL for Fixed and Mobile Receivers: XML Application Language for Application Coding. ABNT, São Paulo, 2007.Google Scholar
- A. Benveniste and G. Berry. The synchronous approach to reactive and real-time systems. Proceedings of the IEEE, 79(9):1270--1282, September 1991. Google ScholarCross Ref
- G. Berry, P. Couronne, and G. Gonthier. Synchronous programming of reactive systems: An introduction to ESTEREL. In K. Fuchi and M. Nivat, editors, Proceedings of the First Franco-Japanese Symposium on Programming of Future Generation Computers, Tokyo, Japan, 6--8 October, 1986, pages 35--55, Amsterdam, 1988. North-Holland Publishing Company.Google Scholar
- D. Bulterman, J. Jansen, P. Cesar, S. Mullender, E. Hyche, M. DeMeglio, J. Quint, H. Kawamura, D. Weck, X. G. Pañeda, D. Melendi, S. Cruz-Lara, M. Hanclik, D. F. Zucker, and T. Michel. Synchronized multimedia integration language (SMIL 3.0). Recommendation, W3C, December 2008.Google Scholar
- F. Cazenave, V. Quint, and C. Roisin. Timesheets.Js: When SMIL meets HTML5 and CSS3. In Proceedings of the 2011 ACM Symposium on Document Engineering, DocEng '11, pages 43--52, New York, 2011. ACM. Google ScholarDigital Library
- S. M. Chung and A. L. Pereira. Timed Petri net representation of SMIL. IEEE Multimedia, 12(1):64--72, 2005. Google ScholarDigital Library
- J. dos Santos, C. Braga, and D. C. Muchaluat-Saade. A rewriting logic semantics for NCL. Science of Computer Programming, 107(C):64--92, September 2015. Google ScholarDigital Library
- O. Gaggi and A. Bossi. Analysis and verification of SMIL documents. Multimedia Systems, 17(6):487--506, 2011. Google ScholarDigital Library
- GStreamer. GStreamer: Open source multimedia framework. http://gstreamer.freedesktop.org. Accessed today.Google Scholar
- I. Hickson, R. Berjon, S. Faulkner, T. Leithead, E. D. Navara, E. O'Connor, and S. Pfeiffer. HTML5: A vocabulary and associated APIs for HTML and XHTML. Recommendation, W3C, October 2014.Google Scholar
- R. Ierusalimschy. Programming in Lua. Lua.org, 4th edition, 2016.Google Scholar
- ISO/IEC 14496--11:2005. Information Technology -- Coding of Audio-Visual Objects -- Part 11: Scene Description and Application Engine. ISO, Geneva, 2005.Google Scholar
- ITU-T Recommendation H.761. Nested Context Language (NCL) and Ginga-NCL. ITU-T, Geneva, November 2014.Google Scholar
- H.-S. Kim. Conversion mechanism of XMT into SMIL in MPEG-4 system. In Y.-S. H and H.-J. Kim, editors, Advances in Multimedia Information Processing -- PCM 2005: 6th Pacific Rim Conference on Multimedia, Jeju Island, Korea, November 13--16, 2005, Proceedings, Part II, pages 912--922. Springer, Heidelberg, 2005.Google Scholar
- H.-S. Kim and C. Dae-Jea. Conversion mechanism for MPEG-4 contents services on Web environment. In T.-J. Cham, J. Cai, C. Dorai, D. Rajan, T.-S. Chua, and L.-T. Chia, editors, Advances in Multimedia Modeling: 13th International Multimedia Modeling Conference, MMM 2007, Singapore, January 9--12, 2007. Proceedings, Part II, pages 627--634. Springer, Heidelberg, 2006. Google ScholarDigital Library
- M. Kim, S. Wood, and L.-T. Cheok. Extensible MPEG-4 textual format (XMT). In Proceedings of the 2000 ACM Workshops on Multimedia, MULTIMEDIA '00, pages 71--74, New York, 2000. ACM. Google ScholarDigital Library
- Lab. TeleMídia. DietNCL: A tool to remove the syntactic sugar from NCL documents. http://github.com/TeleMidia/DietNCL. Accessed today.Google Scholar
- G. F. Lima. A synchronous virtual machine for multimedia presentations. PhD thesis, Department of Informatics, PUC-Rio, Rio de Janeiro, 2015.Google Scholar
- G. F. Lima, C. Braga, and E. H. Haeusler. The Smix synchronous multimedia language: Operational semantics and coroutine implementation. In Anais da 1a Escola de Informática Teórica e Métodos Formais (ETMF 2016), Natal, RN, Brazil, 22--23 November, 2016, pages 145--154, Porto Alegre, 2016. SBC.Google Scholar
- G. F. Lima and L. F. G. Soares. Two normal forms for link-connector pairs in NCL 3.0. In Proceedings of the 19th ACM Brazilian Symposium on Multimedia and the Web, WebMedia '13, pages 201--204, New York, 2013. ACM. Google ScholarDigital Library
- E. L. Melo, C. C. Viel, C. A. C. Teixeira, A. C. Rondon, D. de Paula Silva, D. G. Rodrigues, and E. C. Silva. WebNCL: A web-based presentation machine for multimedia documents. In Proceedings of the 18th Brazilian Symposium on Multimedia and the Web, WebMedia '12, pages 403--410, New York, 2012. ACM. Google ScholarDigital Library
- F. C. Pereira and T. Ebrahimi. The MPEG-4 Book. Prentice Hall PTR, Upper Saddle River, NJ, 2002.Google Scholar
- D. Picinin, J.-M. Farines, and C. Koliver. An approach to verify live NCL applications. In Proceedings of the 18th ACM Brazilian Symposium on Multimedia and the Web, WebMedia '12, pages 223--232, New York, 2012. ACM. Google ScholarDigital Library
- B. Shao, L. M. Velazquez, N. Scaringella, N. Singh, and M. Mattavelli. SMIL to MPEG-4 BIFS conversion. In Second International Conference on Automated Production of Cross Media Content for Multi-Channel Distribution, AXMEDIS 06, pages 77--84, December 2006. Google ScholarDigital Library
- E. C. O. Silva, J. A. F. dos Santos, and D. C. Muchaluat-Saade. NCL4WEB: Translating NCL applications to HTML5 Web pages. In Proceedings of the 2013 ACM Symposium on Document Engineering, DocEng '13, pages 253--262, New York, 2013. ACM. Google ScholarDigital Library
- L. F. G. Soares and G. F. Lima. The NCL handbook. Monographs in computer science, Informatics Department, PUC-Rio, Rio de Janeiro, 2013.Google Scholar
Index Terms
- Converting NCL Documents to Smix and Fixing Their Semantics and Interpretation in the Process
Recommendations
Dynamic Integration of Foreign-Language Parsers into an NCL Player
WebMedia '18: Proceedings of the 24th Brazilian Symposium on Multimedia and the WebWe describe how we modified an NCL player to accept as input, in addition to NCL documents, Lua scripts. These Lua scripts evaluate to a table in a particular format, called NCL-ltab, which is a Lua table encoding of the NCL player's internal model. One ...
Ginga-NCL architecture for plug-ins
TOPI '11: Proceedings of the 1st Workshop on Developing Tools as Plug-insGinga-NCL is the declarative environment of the Ginga middleware, an ITU-T Recommendation for IPTV services and ITU-R Recommendation for terrestrial digital TV. This paper discusses the two-way solution Ginga proposes for its plug-ins. Ginga defines an ...
Variable and state handling in NCL
Most time-based declarative languages have limited support for variable definition and manipulation, which causes developers to resort to imperative languages. However, a declarative language should provide a variable handling model sufficiently rich to ...
Comments