Studio e sviluppo di un’applicazione MHP per la realizzazione di una guida tv (EPG) evoluta
Upcoming SlideShare
Loading in...5
×
 

Studio e sviluppo di un’applicazione MHP per la realizzazione di una guida tv (EPG) evoluta

on

  • 1,205 views

Studio e sviluppo di un’applicazione MHP per la realizzazione di una guida tv (EPG) evoluta - Marco Bartolozzi - AA 2009-2010 Relatori: Dr. Alessandro Piva, Dr. Roberto Caldelli, Ing. Rudy ...

Studio e sviluppo di un’applicazione MHP per la realizzazione di una guida tv (EPG) evoluta - Marco Bartolozzi - AA 2009-2010 Relatori: Dr. Alessandro Piva, Dr. Roberto Caldelli, Ing. Rudy Becarelli, Dr. P. Mazzanti, Ing. Matteo Casini

Statistics

Views

Total Views
1,205
Views on SlideShare
912
Embed Views
293

Actions

Likes
0
Downloads
5
Comments
0

1 Embed 293

http://lci.micc.unifi.it 293

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Studio e sviluppo di un’applicazione MHP per la realizzazione di una guida tv (EPG) evoluta Studio e sviluppo di un’applicazione MHP per la realizzazione di una guida tv (EPG) evoluta Presentation Transcript

  • Studio e sviluppo di un’applicazione MHP per la realizzazione di una guida tv (EPG) evoluta Tesi di laurea di Marco BartolozziRelatori:Prof. Alessandro PivaDr. Roberto CaldelliIng. Rudy BecarelliDr. Paolo MazzantiIng. Matteo Casini 08 Aprile 2011
  • Sommario• Obiettivo tesi e scenario di riferimento (TV digitale terrestre)• Demo• Transport Stream (TS) e tabelle informative PSI/SI• Progettazione applicazione “EPG-Client”• Conclusioni e sviluppi futuri 2
  • EPGLa sigla EPG è l’acronimo di Electronic ProgramGuide e indica un’applicazione destinata ai decoderinterattivi (STB – set top box) e ai nuovi televisoridigitali (iDTV) per fornire l’elenco dei programmiattualmente diffusi o di prossima programmazionesui canali televisivi digitali.Le soluzioni presenti sul mercato sono due: guida standard realizzata dai principali produttori di decoder e televisori guida MyEPG realizzata da Mediaset in collaborazione con Tv Sorrisi e Canzoni. 3
  • ObiettivoSviluppare un’applicazione Java MHP di EPG dei canalitrasmessi ad una stessa frequenza (mux) con contenutimultimediali aggiuntivi.Scenario applicativo Segnale digitale terrestre Broadcaster TV Xlet Set Top Box Application Manager 4
  • Standard DVBLo standard DVB definisce le metodologie di trasmissionedel segnale digitale in ambito televisivo.Tale standard rispetta le specifiche definite dall’ETSI(European Telecomunications Standards Institute).In base al canale trasmissivo e al tipo di modulazione lostandard DVB si divide in alcuni sottostandard: DVB-S (Satellite) DVB-T (Terrestrial) DVB-C (Cable) DVB-H (Handheld) 5
  • Standard di compressione MPEG-2Lo standard di compressione audio/video MPEG-2 èalla base dello standard DVB-T per le trasmissioni televisivedigitali le quali non sarebbero possibili senza una riduzionedella quantità di dati per rappresentare le informazioni. 6
  • Composizione Transport StreamIl Transport Stream è un flusso composto da più servizi ognunodei quali è formato da uno o più eventi.Ogni evento è composto da stream elementari audio,video edati codificati. 7
  • Tabelle PSI / SIGli standard DVB-SI e MPEG-2 definiscono delle tabelleinformative del transport stream relative ai servizi presenti,agli eventi e agli stream elementari componenti. PAT – Program Association Table PMT – Program Map Table Tabelle PSI (Program NIT – Network Information Table Specific Information) CAT – Conditional Access Table definite da MPEG-2BAT – Bouquet Association TableSDT – Service Description Table Tabelle SI (ServiceEIT – Event Information Table Information) definiteRST – Running Status TableTDT – Time Date Table da DVB-SITOT – Time Offset Table 8
  • Tabelle EITAll’interno delle tabelle EIT vengono inserite leinformazioni relative agli eventi in programmazionesui servizi dello stesso transport stream.Le tabelle EIT possono essere di due tipi: EIT present-follow: contengono le informazioni relative all’evento attuale e successivo di un particolare servizio EIT schedule: contengono informazioni relative agli eventi in programmazione entro un arco di tempo 9
  • SezioniLe sezioni di una tabella condividono campi che ne permettonola sua identificazione univoca: table_id table_id_extension Dimensione massima tabelle: section_number 1024 byte tabelle PSI version_number 4096 byte tabelle DVB-SI DescrittoriSono composti da tre elementi identificativi: { tag, lenght, content } Le tabelle EIT definiscono due descrittori per fornire informazioni aggiuntive sugli eventi: short_event_descriptor extended_event_descriptor 10
  • Standard DSMCCPer la trasmissione di dati è stato definito lo standardDSMCC basato sullo stream MPEG-2. Tale standardè utilizzato quindi per trasmettere le applicazioni e lerisorse ai ricevitori. 11
  • Sistema trasmissivo OpenCasterSezione tabella EIT definita durante la sperimentazioneOpenCaster è un framework open-source per lagestione del sistema trasmissivo per la tv digitale.E’ composto da: un insieme di librerie scritte in linguaggio Python un insieme di strumenti (tool) scritti in C Percorso file immagine all’interno del filesystem trasmesso in broadcastE’ possibile modificare i dati delle tabelle informative delTransport Stream attraverso un file di configurazione pythonfornito da OpenCaster. 12
  • Sistema trasmissivo OpenCasterComandi necessari per mandare in onda un transport stream:1.oc-update2.tscbrmuxer3.tsstamp4.DtPlayoc-update permette di trasformare un filesystem in un DSMCCobject-carousel.tscbrmuxer permette di effettuare il multiplexing veroe proprio dei pacchetti TS ad un bit-rate predefinito e costante.tsstamp permette di sincronizzare gli stream audio/video in baseal bitrate complessivoDtPlay manda in onda il transport stream alla frequenza desiderata 13
  • Ambiente di sviluppo JMAG 14
  • Analisi dei casi d’usoRequisiti applicazione: guida televisiva dei canali presentiall’interno dello stesso mux e visualizzazione dei contenutimultimediali collegati agli eventi in programmazione. 15
  • Architettura applicazione “EPG-Client” EPGView Controller Model 16
  • API DVB-SILe richieste inviate allo stream tramite i metodi dellaAPI DVB SI sono asincrone.Metodi presenti all’interno della API per il recuperodelle informazioni dalle tabelle PSI/SI: retrieveActualSITransportStream retrieveSIServices retrieveSIPresent retrieveSIFollowing retrieveSISchedule retrieveSIDescriptors 17
  • API DVB-SILa API è event-source poiché restituisce un evento perogni richiesta effettuata allo stream. Gli eventi possonoessere di due tipi: eventi di successo o eventi di insuccesso.SISuccessfulRetrieveEvent – richiesta allo stream DVB avvenuta correttamenteSILackOfResourceEvent – richiesta non completata per mancanza di risorseSIRequestCancelledEvent – richiesta cancellataSITableNotFoundEventSIObjectNotInTableEvent informazione non trovataSINotInCacheEvent 18
  • API DVB-SIPer ogni chiamata effettuata alla API sono stati creatidalla classe HandlerFactory degli oggetti ascoltatori cherimangono in attesa delle risposte relative ai dati informatividelle differenti tabelle.• Handler1 – transport stream• Handler2 – servizi presenti• Handler3 – eventi• Handler4 – descrittori eventi• costrutto java synchronized 19
  • Diagramma di sequenza recupero dati EPG 20
  • Diagramma di sequenza recupero dati EPG 21
  • Diagramma di sequenza recupero dati EPG 22
  • File multimediali della guidaI file multimediali trasmessi nello stream collegati aglieventi sono tre: file immagine (.gif, .jpg o .png) Restrizioni standard file audio (.mp2) MHP file xml di descrizione estesa Dimensioni limitate tabella EIT 23
  • Struttura file xml<?xml version="1.0" encoding="UTF-8"?><descrizione> <trama> </trama> <cast> </cast> UTF-8: codifica standard che comprende <regista> </regista> un set completo di caratteri inclusi caratteri speciali e lettere accentate. <recensioni> <recensione> <autore> </autore> <desc> </desc> </recensione> … </recensioni> <info> </info> <curiosita> </curiosita></descrizione> 24
  • Recupero file dallo streamL’accesso al filesystem trasmesso in broadcast è statofondamentale per il recupero dei file multimediali di interesse.• API Davic• API DSMCC 25
  • Parser NanoXMLE’ una libreria Java utilizzata per effettuare il parsing di fileXml.Caratteristiche:• utilizzabile in sistemi embedded (KVM o J2ME)• parser Java di piccole dimensioni• veloce per piccoli documentiNell’applicazione è stata utilizzata la versione 1.6 poiché la2.1 più compatta (6KB) e veloce è risultata incompatibile conalcuni STB. 26
  • Selezione servizioUn servizio a livello logico è visto come una collezione di informazionidi servizio, stream audio/video e applicazioni che possono essere presentateinsieme come un’entità coerente. 27
  • Selezione servizioServiceContext è la classe che rappresenta l’ambiente in cui taliservizi sono presentati. 28
  • Diagramma di sequenza selezione servizio• API JavaTV Service Selection 29
  • Dimostrazione EPG-Client 30
  • Risultati sperimentaliDiPro Elsag Humax TelesystemInteract I Aries 1000H Combo 9000 TS7900HD Funzionamento applicazione EPG-Client 31
  • Applicazione EPG - Schedule E’ stata sviluppata inoltre un’altra applicazione con la stessa struttura di EPG-Client per il recupero delle informazioni sugli eventi in Iprogrammazione entro unElsag 1000H DiPro Interact Humax Combo 9000 Telesystem arco di tempo compreso fra Aries TS7900HD due date. Metodi API DVB SI: RetrieveSISchedule RetrieveSIActual retrieveSIPresent TransportStream retrieveSIFollowing retrieveSISchedule SISuccessfulRetrieSILackOfResource valEvent SISuccessful Generic contenente solo il RetrievalEvent event of primo failure evento 32
  • Applicazione lato server –“Guida TV” per la generazione del file di configurazione python 33
  • Conclusioni Applicazione EPG-Client per la visualizzazione degli eventi attuale e successivo dei canali entro il mux comprensivi dei contenuti multimediali STB Telesystem non implementa la API DVB-SI metodo retrieveSISchedule restituisce risposte differenti su ogni STBLimiti dello standard DVB-SI: le tabelle EIT non forniscono un descrittore specifico per i contenuti multimediali della guida le tabelle sono limitate in dimensioni per questo è stato necessario trasmettere le informazioni aggiuntive attraverso un file xml in broadcast 34
  • Sviluppi futuriMeccanismo automatico per la modifica delle tabelleEIT-present follow al termine di un evento su un canaletelevisivoCreazione di un database per l’inserimento di eventi entroun arco di tempo dei canali televisivi di un’emittente tv. 35