Design, Implementation and Evaluation of Data Carrousel Extractor Algorithm On MPEG-2 TS For Digital Terrestrial Television
Design, Implementation and Evaluation of Data Carrousel Extractor Algorithm On MPEG-2 TS For Digital Terrestrial Television
Design, Implementation and Evaluation of Data Carrousel Extractor Algorithm On MPEG-2 TS For Digital Terrestrial Television
Abstract—This paper shows the design, implementation and La cabecera de los paquetes llevan su respectivo identificador
evaluation of an algorithm that allows the extraction of Transport de paquete (PID del inglés Packet Identification) que señala
Stream’s (TS) data section for Digital Terrestrial Television el tipo de datos que transporta los 184 bytes restantes,
(DTT), with the organization in a hierarchical file system and
directories based on MPEG-2 standard ISO-13818-6: Extension dependiendo de lo indicado en las tablas de información
for Digital Storage Media Command and Control (DSM-CC), in especı́fica de programa (PSI del inglés Program Specific
order to fully recover the media from interactive applications Information) o información de servicio (SI del inglés Service
contained by the MPEG-2 TS stream. To check the validity Information). En el caso de la transmisión de datos de las
of the algorithm, it was implemented in a software to evaluate aplicaciones interactivas, los paquetes transportan el directorio
the application extraction of different TS, verifying its correct
operation, as it successfully recovered all directories and files y contenido completo de las aplicaciones, a través de la
from interactive applications conversión de estos a un formato de carrusel de datos [5]
Index Terms—Interactive Applications, Data Carosusel, Ob- descrito en la norma de MPEG-2 ISO-13818-6: Extensiones
ject Data, DSM-CC,BIOP messages, MPEG-2, DTT, Transport para el Comando y Control de Almacenamiento de Medios
Stream. Digital (DSM-CC del inglés Digital Storage Media Command
and Control) [6]. La definición y estructura del carrusel de
I. I NTRODUCCI ÓN
datos se explica en la sección II-B.
El avance que han realizado las nuevas tecnologı́as de comu- Diversas arquitecturas son propuestas como en [7] para
nicación ha permitido traer consigo el concepto y desarrollo mejorar el tiempo de descarga y extracción de datos del TS,
de la Televisión Digital Terrestre (TDT), que ha convertido donde se propone una forma de almacenamiento rápido de
al telespectador pasivo en un usuario interactivo [1]. Esto la información en la memoria caché, utilizando programación
como consecuencia de la inclusión de aplicaciones interactivas basado en prioridad de monitoreo de hilos. Otros trabajos
dentro del sistema, las cuales cada vez más, son vistas como proponen una modificación a la estructura tradicional de un
una nueva y potencial forma de hacer publicidad y comercio carrusel de datos de modo que este transmita de una forma
electrónico [2], ya no solo como una forma de inclusión y más sencilla la estructura jerárquica de archivos y directorios,
equidad social de la población por parte de los gobiernos, y que de igual forma el receptor sea capaz de interpretar esta
como el caso de Ecuador [3] y otros paı́ses de América Latina modificación para poder visualizar una mejora de rendimiento
[4]. Esto produce que el contenido de información multimedia en la descarga de los datos [8]. De manera similar en [9] se
transmitido deba ser de alguna manera analizado, sea con propone otra arquitectura de software que permite un proce-
fines regulatorios, de investigación o de comprobación del samiento más rápido de la descarga de información acorde a
funcionamiento en cuanto a calidad de la programación de una selección previa del televidente.
las aplicaciones interactivas, sin la necesidad de contar con Los trabajos citados anteriormente al igual que la mayorı́a,
un decodificador especial que ejecute las aplicaciones y en no se enfocan tanto en contenido del carrusel, sino mas bien en
consecuencia muestre su contenido. la forma de mejorar el rendimiento del sistema, disminuyendo
La TDT transmite cada uno de sus diferentes servicios tiempos de extracción por lo que la visualización y análisis
video, audio y datos, mediante el Flujo de Transporte (TS del del contenido sigue limitándose al uso de un decodificador
inglés Transport Stream), el cual se caracteriza por realizar u otros dispositivos como en [10] donde este puede realizar
multiplexación de cada uno de estos servicios, en un solo la descarga de información del TS en un dispositivo de
flujo de datos, dividiendo la información en paquetes de 188 almacenamiento para posterior análisis, pero esta forma aparte
bytes los cuales se dividen 4 bytes de cabecera y 184 bytes de ser patentada es mucho más compleja de implementar,
de datos. por lo cual en el presente trabajo se propone generar un
algoritmo de descarga, más sencillo y fácil de implementar en
un software, con el objetivo de facilitar la tarea de extracción
978-1-5090-1633-4/16/$31.00
c 2016 IEEE y reconstrucción de la información multimedia, cuando esta
se transmite mediante un carrusel de datos. muy sencillo de este sistema, el cual se basa en la asignación
En el presente trabajo la Sección II brinda una visión rápida de claves de objeto a cada archivo y carpeta para después
de la metodologı́a utilizada para identificación de protocolos encapsular la información dentro de mensajes BIOP de tipo
y parámetros en la norma, además de una breve conceptuali- file (fil), directory (dir) y service gateway (srg), cada uno con
zación del carrusel de datos y otros aspectos asociados como su respectiva cabecera la cual contiene información del tipo
el carrusel de objetos y las secciones DSM-CC. En la Sección de mensaje, tamaño y sobre todo la clave de objeto asignada.
III se explica el algoritmo de extracción diseñado y las limita- Los mensajes tipo fil son los encargados de transportar el
ciones que este posee. Los resultados obtenidos después de la contenido de los archivos, mas no su nombre, ya que de esto
implementación del software se analizan en la Sección IV. Las se encargarán los mensajes dir y srg. Cabe mencionar que la
conclusiones más representativas y planteamiento de trabajos estructura de los mensajes dir y srg son exactamente iguales
de investigación relacionados para un futuro desarrollo, se con la diferencia que srg generalmente se le asigna la clave de
muestran en la sección V. objeto cero (0) y será único en el carrusel de objetos ya que
representa al directorio raı́z, mientras que los tipo dir puede
II. M ÉTODO haber tantos como el número total de carpetas en el directorio
Para cumplir con los objetivos propuestos, primero se ana- [13].
lizaron los protocolos y parámetros disponibles dentro de la
norma MPEG-2 ISO-13818-6, para identificar cuáles serı́an
necesarios, en la elaboración del algoritmo de descarga. Dicha
identificación se realizó en base al análisis de la estructura
del carrusel de datos y comparándola con la que presentaba
diversos TS de prueba, los cuales contenı́an datos DSM-CC.
Para realizar dicha comparación se hizo uso del software
notepad++, el cual permite hacer un mejor análisis de la
información, como poder visualizar caracteres no imprimibles,
conversión rápida de ASCII a hexadecimal o viceversa y
conteo rápido de bytes seleccionados [11].
En la norma se identificaron dos protocolos para DSM-
CC: Usuario-Red (U-N) y de descarga [8]. El U-N define el
tipo mensajes DSM-CC que transportará el carrusel de datos.
El perfil de mensajes U-N que se manejó para este trabajo
es el caracterı́stico de una red broadcast unidireccional de
servidor a cliente [12], siendo un ejemplo de servidor el canal Fig. 1. Encapsulación del directorio de una aplicación ginga.ncl dentro del
de televisión que transmite su señal digital con datos y el carrusel de objetos
cliente la población que recepta dichos datos con su televisor.
El cliente por lo tanto descarga la información en cualquier Los mensajes dir y srg por lo tanto son los encargados de
instante ya que los mensajes son transmitidos continuamente. describir los archivos y carpetas que contiene un directorio
El perfil de protocolo de descarga para televisión digital es identificado su nombre, tipo, tamaño (solo de archivos) y en
aquel que hace uso del carrusel de datos, y este a su vez especial las claves de objetos que se les fue asignado. La Tab.
maneja herramientas de apoyo para construcción de direc- I muestra que contenido deberı́an tener los mensajes dir y
torios y archivos como lo es el carrusel de objetos y para srg, haciendo referencia al ejemplo de la Fig.1. Los nombres,
encapsulamiento dentro del TS las secciones DSM-CC. Estas tipos y claves de objetos asociados son los que sirven para
herramientas son explicadas a continuación. relacionar un directorio con los archivos o carpetas que estos
deben contener.
II-A. Carrusel de Objetos
TABLA I
Las aplicaciones interactivas para TDT, son transmitidas D ESCRIPCI ÓN DE LOS MENSAJES dir Y srg DE LOS OBJETOS ASOCIADOS
con su directorio y archivos, entre los cuales se encuentra el AL DIRECTORIO
código fuente de su programa principal, el cual generalmente
Clave Objeto Directorio Nombre Objeto Asoc Tipo Objeto Asoc Clave Objeto Asoc
funciona haciendo llamadas a imágenes, archivos de texto u 0 main.ncl fil 1
media dir 2
otros ficheros multimedia que requiera para su ejecución, a espe.png fil 3
2
partir del directorio donde esten ubicados, por lo que resulta texto1.txt fil 4
importante no solo recuperar el contenido de los archivos en sı́,
sino también la ubicación u ordenamiento archivos en relación
a su directorio raı́z. De esto se encarga el carrusel de objetos II-B. Carrusel de Datos
que provee un sistema de mensajes “Broadcast Inter ORB El objetivo del carrusel de datos es proveer un formato a
Protocol” (BIOP), el cual provee el sistema de recuperación de los datos para facilitar la transmisión a través de la red, por lo
archivos con su directorio [13]. La Fig. 1 muestra un ejemplo que después de haber convertido la información en carrusel de
objetos, este es dividido en módulos, y a su vez cada módulo se
subdividirá en un determinado número de bloques de descarga.
Existen 3 tipos de bloques dentro de un carrusel de datos: El
Download Data Block (DDB), el Download Info Indication
(DII) y el Download Server Initiate (DSI). Los DDB son los
encargados de encapsular al carrusel de objetos, es decir que en
general transportan los datos de la aplicación. Los DII y DSI
por otro lado constituyen mensajes de control de descarga, con
la particularidad de que un DII tiene la función de describir a
un solo grupo de módulos, mientras que el DSI describe a un
supergrupo (dos o más grupos) [13].
El tipo de trasmisión del carrusel de datos hacia la red es
de naturaleza cı́clica, es decir que este se encontrará repetido
varias veces a lo largo de todo el TS, para permitir al cliente la
descarga de la información en cualquier momento. Un ejemplo
de esto se muestra en la Fig. 2 [14] donde se tiene un carrusel
de datos con 3 módulos (M1, M2 y M3) en un bucle que se Fig. 3. Carrusel de datos: (a) una capa , (b) dos capas
repite cı́clicamente y donde cada módulo es dividido en un
cierto número de bloques DDB dependiendo del tamaño del
el carrusel de datos consta de un número grande de módu-
módulo. Además se tiene la presencia de bloques de control de
los (mayor a 65.535), razón por la cual su descripción es
descarga como el DII o el DSI, los cuales describen al grupo
demasiado grande para un solo mensaje DII o cuando se
de módulos en cuestión. Cabe destacar que aun cuando en el
tiene variabilidad en cuanto a la versión de una aplicación
ejemplo de la Fig. 2 se tiene una sola vez la inclusión de la DII
transmitida, respecto al perfil que maneja el receptor [13].
y DSI dentro del bucle, la norma ISO/IEC 13818-6 no restringe
Entonces dado que en este trabajo solo utilizamos como base
en lo absoluto la posición, las veces o la frecuencia con la que
la transmisión de aplicaciones en una única versión y además
se puedan introducir estos bloques dentro de un mismo ciclo.
por su cantidad limitada de elementos, se generarán un número
Esto con el objetivo de generar el carrusel que mejor se adapte
pequeño de módulos para el carrusel de datos, resultando
con las necesidades o caracterı́sticas del cliente.
efectivo la utilización de un solo DII para contener toda la
descripción del grupo, por lo que se planteó solo el uso del
concepto de carrusel de datos de una capa, para la elaboración
del algoritmo de extracción.
TABLA IV
R EPORTE DE EXTRACCI ÓN DE DATOS
R EFERENCIAS
[1] JaeHoon Cho, Young June Sah and Junghee Ryu, “A new content-related
advertising model for interactive television,” Broadband Multimedia
Systems and Broadcasting, 2008 IEEE International Symposium on, Las
Vegas, NV, 2008, pp. 1-9.
[2] L. Xiang and Q. Wang,“Influence of Interactive Television on Electronic
Commerce,” Management of e-Commerce and e-Government, 2009.
ICMECG ’09. International Conference on, Nanchang, 2009, pp. 513-
516.
[3] Ministerio de Telecomunicaciones y Sociedad de la Información.
Televisión Digital Terrestre en el Ecuador. 2010. [Online]. Avai-
lable: http://www.telecomunicaciones.gob.ec/television-digital-terrestre-
en-el-ecuador/.
[4] J. B. dos Santos Junior, K. P. Braga, D. de Souza, G. Vilela, D. Lima and
W. Diogo, “Towards interactivity for citizenship: An approach to inter-
active digital television,” Consumer Communications and Networking
Fig. 10. Directorio y ficheros recuperados de celinaginga.ts Conference (CCNC), 2012 IEEE, Las Vegas, NV, 2012, pp. 723-728.
[5] D. Villamarı́n, M. A. Illescas, G. Olmedo and R. L. Cueva, “Gene-
rating a transport stream for digital terrestrial television system in
conformance with ISDB-Tb standard,” Communications and Computing
(COLCOM), 2013 IEEE Colombian Conference on, Medellin, 2013, pp.
1-5.
[6] ISO/IEC. “Generic coding of moving pictures and associated audio
information - Part 6: Extensions for DSM-CC”. 13818-6. September
1, 1998
[7] Dong-Hwan Park, Tai-Yeon Ku and Kyeong-Deok Moon, “Real-time
carousel caching and monitoring in data broadcasting,” Consumer Elec-
tronics, 2006. ICCE ’06. 2006 Digest of Technical Papers. International
Conference on, 2006, pp. 273-274.
[8] Hongguang Zhang, Tianpu Jiang, Zhiqi Gu and Shibao Zheng, “Design
and implementation of broadcast file system based on DSM-CC data
carousel protocol,” in IEEE Transactions on Consumer Electronics, vol.
50, no. 3, pp. 929-933, Aug. 2004.
[9] W. Guobin, N. Hong, P. Liang and W. Gang, “Advanced Software
Architecture for Processing Bulk Carousel Data in a Data Broadcasting
Push Service,” Signal Processing, 2006 8th International Conference on,
Beijing, 2006, pp. .
[10] I. a. M. M. a. I. H. Hamada, “Apparatus and method for
downloading desired data signal to user-selectable storage
Fig. 11. Ejecución en OpenGinga de la aplicación extraida de celinaginga.ts unit,” Google Patents, 16 aug 2005. [Online]. Available:
https://www.google.com/patents/US6931198. [Último acceso: 24
feb 2016].
[11] Ho, D. Notepad++. 2011. [Online]. Available: http://notepad-plus-
en especial en paı́ses de América Latina donde la TDT, aún plus.org.
sigue en proceso de implementación, lo que genera que se [12] V. Balabanian, L. Casey, N. Greene and C. Adams, “An introduction to
deba hacer pruebas de transmisión de los diferentes servicios digital storage media-command and control,” in IEEE Communications
Magazine, vol. 34, no. 11, pp. 122-127, Nov 1996.
que la TDT posee. Esto significa que en lo que respecta a la [13] ETSI TR. “Digital Video Broadcasting (DVB);Implementation guideli-
transmisión de aplicaciones interactivas y datos en general, se nes for Data Broadcasting”. 101 202 V1.2.1 (2003-01)
deba tener formas más sencillas de recuperar la información [14] ETSI TR. “Cyclic transmission of information in a data carou-
sel”.[Figure]. 101 202 V1.2.1 (2003-01)
sin necesidad de utilizar un decodificador en especial, sea esto [15] ETSI EN. “Structure of the DVB data carousel”.[Figure]. 301 192
por motivos de investigación, regularización o para comproba- V1.4.1. 2004.
ción del correcto funcionamiento de este servicio en el sistema [16] ISO/IEC. “Information technology – Generic coding of moving pictures
TDT. and associated audio information – Part 1: Systems”. 13818-1. 2015
[17] ETSI TR. “DSM-CC Section Format”.[Table]. 101 202 V1.2.1 (2003-
En el presente trabajo no es considerado ninguno de los 01)
códigos detectores de errores (CRC-32 o Checksum) que posee [18] ETSI TR. “Encoding of DSM-CC section fields”.[Table]. 101 202
la estructura de las secciones DSM-CC, por lo que serı́a V1.2.1 (2003-01)
[19] Ether Guide Systems. “pointer field [MPEG-
interesante realizar un trabajo en cuanto a la comparación de 2 Semantics]”. [Online] . Available:
datos extraı́dos cuando se descarta o no bloques de datos con http://www.etherguidesystems.com/help/sdos/mpeg/semantics/mpeg-
información errónea. 2/pointer field.aspx. [Último acceso: 20 Abr 2016].
[20] ABNT NBR. Televisión digital terrestre — Multiplexación y servicios
La implementación del algoritmo desarrollado con dife- de información (SI) Parte 2: Estructura de datos y definiciones de la
rentes lenguajes de programación como Java, Python, etc. información básica de SI. 15603-2. (21.09.2009).
resultarı́a interesante para poder comparar el rendimiento que [21] A. Haubold, “Matlab for first-year college engineers,” 2007 37th Annual
Frontiers In Education Conference - Global Engineering: Knowledge
cada uno posee en cuanto al tiempo de extracción de un Without Borders, Opportunities Without Passports, Milwaukee, WI,
mismo TS, además de poder tener a disposición un software 2007, pp. F1H-7-F1H-12.
[22] Quingaluisa Quispe, Á. L., Torres Beltrán, J. A. “Estudio
e investigación del MIDDLEWARE GINGA J del estándar
brasileño de televisión digital. caso práctico: desarrollo de una
aplicación interactiva aplicando metodologı́a OPENUP/BASIC como
parte del Proyecto ESPE-GINGA”. 2011. [Online]. Available:
http://repositorio.espe.edu.ec/bitstream/21000/4748/1/T-ESPE-
032865.pdf.