1/28La Guerra del Fuoco; 30/10/20031 Dalla Libanomanzia ai Modelli ab-Initio Leonardo Castellano.
24/09/2003© 20031 Streaming Media Ing. Maurizio Vitale.
-
Upload
anselmo-ferrero -
Category
Documents
-
view
219 -
download
0
Transcript of 24/09/2003© 20031 Streaming Media Ing. Maurizio Vitale.
24/09/2003 © 2003 1
Streaming Media
Ing. Maurizio Vitale
2
Streaming MediaStreaming Media
Introduzione Comunicazione multimediale
il contenuto informativo risiede in più media (dati, voce, video, ecc.)
Videocomunicazione - classificazione: uno a molti monodirezionale (broadcast o on-
demand) uno a molti bidirezionale (interazione tra uditori e
parlatore) molti a molti (videoconferenza)
Livello di interazioneLivello di interazioneBASSOBASSO ALTOALTO
Uno a molti
Broadcast On Demand
Streaming Webcasting
con feedback
Molti a molti
Real time
3
Streaming MediaStreaming Media
Streaming
Tecnologia emergente Consente l’accesso a contenuti multimediali
(audio, video, ecc.) in tempo reale o a richiesta (on demand)
I contenuti multimediali sono trasmessi da un media server e sono elaborati e riprodotti da una applicazione client, il player
Non occorre attendere che sia completato il download del file per visonarlo
I file ricevuti in streaming non sono scritti su disco in quanto elaborati e presentati appena ricevuti, quindi scartati
4
Streaming MediaStreaming Media
Vecchi concetti e nuove tecnologie
Lo streaming multimediale non è nuovo è una forma di broadcast, ma aggiunge una
molteplicità di media e caratteristiche di
interattività
(indicizzazione dei contenuti, hotspot cliccabili nelle immagini, avvio automatico di pagine web durante la riproduzione, ecc.)
5
Streaming MediaStreaming Media
Streaming: moda o opportunità ?
7 utenti Internet su 10 hanno dichiarato che “i siti web sono più piacevoli se comprendono più spesso suoni e video” (studio Arbitron/Edison
Media Research in USA) Aziende importanti (Fujitsu, Hewlett Packard,
ecc.) vedono crescere il ROI (Return Of Investment) delle loro iniziative di streamingFonte Aberdeen Group: “L’introduzione dello streaming in HP ha incrementato l’efficacia e la ricchezza della sua comunicazione e ridotto in modo significativo i costi. Tale riduzione dei costi, che deriva essenzialmente dalla riduzione degli eventi dimostrativi e dei messaggi pubblicitari in radio e via satellite, è stata di circa 1.2 milioni di $ nel primo anno ed ha generato un ROI oltre il 1800% ripagandosi in un mese”
6
Streaming MediaStreaming Media
Come le aziende private usano lo streaming ?
Invio di e-broadcast all’interno della propria organizzazione Realizzazione di presentazioni da remoto per i propri
impiegati, clienti o partner Erogazione di formazione a distanza per la propria rete di
distribuzione/vendita Erogazione di dimostrazioni pre-vendita a distanza Erogazione di servizi per i clienti
Un esempio italiano: Enel.it Notiziario giornaliero per le aziende del gruppo Presentazioni delle aziende del gruppo o di progetti in
corso Formazione Servizi ai clienti delle aziende del gruppo
7
Streaming MediaStreaming Media
Come gli Enti pubblici potrebbero usare lo streaming ?
Comunicazione arricchita diretta verso le varie articolazioni degli Enti
Comunicazioni verso i cittadini/utenti (iniziative delle amministrazioni, novità, esempi di accesso ai servizi, ecc.)
Formazione e/o qualificazione professionale a distanza delle proprie risorse umane
…………..
8
Streaming MediaStreaming Media
Un po’ di tecnica: lo streaming e le tecnologie tradizionali
Download – i contenuti multimediali sono messi a disposizione su un web server da cui è possibile scaricarli
Occorre terminare il download prima di poterli visionare Sono memorizzati sul disco locale
Dowload progressivo o pseudo-streaming Permette la riproduzione prima che il file sia interamente scaricato Non consente di saltare in qualsiasi punto del contenuto
multimediale Può perdere la sincronizzazione o soffrire di hang-up
True streaming La riproduzione è contestuale all’arrivo dei contenuti Dispone di controlli VCR ed è possibile saltare a qualunque punto
del contenuto Supporta la riproduzione live e on-demand I contenuti sono codificati in diverse versioni ottimizzate per
diversi data rate. Lo streaming server sceglie quale versione distribuire in fnzione delle caratteristiche del client e della banda che ha a disposizione.
L’accesso a contenuti multimediali è possibile anche con tecnologie tradizionali
9
Streaming MediaStreaming Media
Come funziona lo streaming ?
1 – L’utente selezione un contenuto multimediale facendo una richiesta ad un Web server 2 – Il Web server inoltra
la richiesta al media server
3 – Il media server invia in streaming il contenuto multimediale all’utente
4 – Il media player sulla postazione utente decodifica il contenuto multimediale in arrivo e lo presenta
Client
Web Server
Media Server
10
Streaming MediaStreaming Media
Le architetture per lo streaming
Una architettura di streaming comprende le metodologie di codifica e di trasmissione, il software server e i player (software client)
Le architetture più popolari sono: Real Media, Windows Media e QuickTimeSono tre standard paralleli non compatibili tra loro
Alcuni Content Provider supportano tutti gli standard
Una architettura è un sistema interdipendente costituito da varie
componenti che lavorano insieme per ottenere certe funzionalità
11
Streaming MediaStreaming Media
L’uso dello streaming
0
5
10
15
20
25
30
Gen-Dic2000
Gen-Dic2000
Gen-Dic2000
20-28milioni
7-13milioni
7milioni
QuickTime WindowsMedia
RealMedia
Utenti di contenuti multimediali nell’anno 2000 suddivisi per player
Fonte: Dale Sorenson – Macintouch - “Streaming Media Market Report 2001”
12
Streaming MediaStreaming Media
I formati dello streaming
Il formato è semplicemente la struttura del file che è generato dalla particolare architettura attraverso i suoi codec
Architettura Formato nativo Estensione del file
QuickTime Formato QuickTime .mov (.qt, .qti)
RealMedia Formati RealMedia, RealAudio .rm, .ra
WindoowsMediaAdvanced Streaming Format, Windows Media Video/Audio
.asf, .wmv, .wma
13
Streaming MediaStreaming Media
La produzione di contenuti multimediali per lo streaming
Ripresa
CatturaMontaggio
CodificaPubblicazione sullo
streaming server
Riproduzione(on-demand)
14
Streaming MediaStreaming Media
La trasmissione live di eventi
Camera 1
Camera 2
Mixer video
NetworkNetwork
Cattura e codifica
Videoregistratore
Media Server
ClientClient
15
Streaming MediaStreaming Media
I protocolli dello streaming: RTP
I contenuti multimediali sono inviati dal server al client usando il protocollo RTP (Real Time Protocol)
Il protocollo RTP si appoggia sul protocollo di trasporto non affidabile UDP
Il suo compito principale è fare in modo che la sequenza temporale dei campioni digitali emessi delle sorgenti multimediali, siano rispettate in ricezione riducendo il jitter (variabilità dei ritardi)
Campioni emessi dalla sorgente Campioni in arrivo senza RTP
Campioni in arrivo con RTP
16
Streaming MediaStreaming Media
RTP
Obiettivi di progetto: flessibile fornisce meccanismi, non impone algoritmi
istanziazioni per H261, MPEG1/2/...
Indipendente dal protocollo UDP/IP, private ATMnetworks...
Scalabile unicast, multicast, da 2 a
Controllo dei dati separato alcune funzioni possono essere fatte dal protocollo di controllo della conferenza
17
Streaming MediaStreaming Media
RTP
Funzioni sui dati (RTP) Etichettatura del contenuto
Identificazione della sorgente Individuazione della perdita Risequenzamento
Timing intra-media synchronization: rimuove il jitter con
l’introduzioni di with buffer di playout inter-media synchronization: sincronizzazione labliale
tra audio-video
18
Streaming MediaStreaming Media
RTP: uso tipico
Normalmente usa UDP (TCP non è adatto al real time) Porta UDP non fissata, ma negoziata Porta UDP per RTCP = porta UDP per RTP + 1 Normalmente viene gestito un solo media per
sessione RTP (i.e. coppia di porte)
19
Streaming MediaStreaming Media
RTP/RTCP: gestione del Tempo RTP time
offset iniziale random (per ogni stream) In ogni pacchetto è presente un RTP timestamp Il Timestamp è incrementato dal tempo speso dal
pacchetto
NTP time Tempo assoluto (usa il formato Network Time
Protocol) NTP timestamp presente in ogni RTCP Sender Report Rende possibile la sincronizzazione inter-stream
20
Streaming MediaStreaming Media
RTP header
version (V) CSRC count (CC) padding (P) marker (M) extension (X) payload type (PT)
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+|V=2|P|X| CC |M| PT | sequence number |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| timestamp |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| synchronization source (SSRC) identifier |+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+| contributing source (CSRC) identifiers || .... |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| payload (audio, video...) || +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| ...| padding | count |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
21
Streaming MediaStreaming Media
RTP header...
Sequence number Incrementato per ogni pacchetto RTP
Synchronization SouRCe (SSRC) Identifica univocamente la sorgente nella sessione Viene scelto randomicamente rivela e risolve le collisioni
Contributing SouRCe (CSRC) e CC Usato da un mixer per identificare le sorgenti che
concorrono alla formazione del flusso La dimensione di tale lista è data dal campo CSRC Count
(CC)
22
Streaming MediaStreaming Media
Mixer e Translator
Mixer Combinano diversi flussi in un nuovo flusso singolo Usa un nuovo SSRC; gli SSRC originali sono nella lista CSRC Appare come una nuova sorgente
Ottiene riduzione di banda
Translator I vari flussi lo attraversano separatamente Conserva i SSRC originali
Realizza la trasduzione di protocollo
23
Streaming MediaStreaming Media
Mixer
Un mixer può cambiare il formato dei dati (codifica) e combiare più stream tra di loro in modo qualunque
Esempio: mixer video (=MCU)
end system 1
end system 2
mixer end system 3from ES1: SSRC=6
from ES2: SSRC=23from M: SSRC=52CSRC list={6, 23}
24
Streaming MediaStreaming Media
Translator
I dati possono passare attraverso il traslatore intatti o possono essere codificati in modo diverso
L’identità dei flussi rimane intatta Esempio: attraversamento di un firewall
end system 1
end system 2
transl.1from ES1: SSRC=6
from ES2: SSRC=23transl.2
from ES2: SSRC=23from ES1: SSRC=6
authorized tunnel
firewallfrom ES2: SSRC=23from ES1: SSRC=6
25
Streaming MediaStreaming Media
I protocolli dello streaming: RTSP
IETF standard RFC 2326
Real-Time Streaming Protocol Agisce come « network remote control »
È un protocollo bidirezionale che può usare sia i servizi di comunicazione di TCP che quelli di UDP/RTP
Supporta le seguenti operazioni reperimento di un contenuto multimediale da un server Invito di un server multimediale in una conferenza Registrazione di una conferenza
26
Streaming MediaStreaming Media
RTSP
È un protocollo text-based È indipendente dal protocollo di trasporto Supporta ogni sistema di descrizione della
sessione (sdp, xml, etc.) Simile al protocollo HTTP con differenze
Richieste client server and server client server Mantiene un « session state » I dati sono trasportati fuori banda
Lavora sia in unicast che in multicast
27
Streaming MediaStreaming Media
Unicast vs Multicast
MulticastMulti-Unicast
28
Streaming MediaStreaming Media
Unicast vs Multicast
MulticastMulti-Unicast
Ordine di NOrdine di NOrdine di NOrdine di N22/4/4
29
Streaming MediaStreaming Media
I metodi RTSP Metodi maggiori
SETUP: il server alloca risorse per lo stream ed inizia una sessione RTSP
PLAY: avvia la trasmissione dei dati dello stream PAUSE: interrompe lo stream temporaneamente TEARDOWN: libera le risorse dello stream cancellando la
sessione sul server
Metodi addizionali OPTIONS: prende i metodi disponibili ANNOUNCE: Cambia la descrizione dell’oggetto multimediale DESCRIBE: prende la descrizione di basso livello dell’oggetto
multimediale RECORD: Il server avvia la registrazione dello stream REDIRECT: Dirotta un client su un altro server SET_PARAMETER:imposta i parametri del codificatore o dei dispositivi
30
Streaming MediaStreaming Media
Esempio: media on demand, unicast
videoserver
audioserver
media descr.web serverclient
step 1: get description (in SDP format)
step 2: open streams with RTSP
step 3: play
step 4: teardown
CW A V
31
Streaming MediaStreaming Media
Esempio …
clientC
web server
W
mediaserversA & V
HTTP GET
presentation description (sdp)
SETUP
PLAY
RTP audio/video
RTCP
TEARDOWN