2010-08-25 18 views
21

È incredibile notare che i siti di live streaming come doitlive.tv possono fornire video su una connessione a casa con larghezza di banda molto bassa (fino a 25kbps). Qualcuno potrebbe spiegarmi la tecnologia dietro questi siti e come sono riusciti a fornire una larghezza di banda così bassa?Qual è la tecnologia dei siti di streaming live?

risposta

3

Content Delivery Systems e riduzione della dimensione del file.

Il primo consente loro di archiviare i propri file nei server nei data center di tutto il mondo, con un costo di trasporto e archiviazione inferiore per l'utente. Ciò significa download/streaming più veloci.

Il secondo è disponibile in molte forme. In particolare riducendo la risoluzione, regolando il bitrate e usando i codec avanzati. Se si riduce un video con risoluzione 640x480 a 320x240, è necessario approssimativamente 1/4 dello spazio per memorizzarlo. Allo stesso modo, l'uso di un bitrate inferiore rende un video più bloccato, ma anche la perdita di precisione è una perdita delle dimensioni del file. Infine, i codec più avanzati come h.264 possono comprimere lo stesso video, con la stessa qualità visiva, più piccoli di codec più vecchi o più semplici, come MPEG1 o DivX.

0

Ora sono molto nuovo allo streaming video, quindi se qualcuno può confermare ciò che sto dicendo è falso sarebbe apprezzato.

Se si desidera acquistare uno dei migliori HDTV in vendita al giorno d'oggi, la migliore qualità possibile è di 1080. È possibile scegliere se si desidera 1080p o 1080i. "p" significa che la TV utilizza la tecnologia di scansione progressiva. Questo è dove l'intera immagine sullo schermo viene aggiornata continuamente. Funziona nello stesso modo in cui funziona la TV terrestre. Ora "i" significa che la TV utilizza la tecnologia di interlacciamento. L'interlacciamento è dove solo i pixel che sono cambiati verranno aggiornati sullo schermo. Si può notare questo se si guarda la TV digitale attraverso un'antenna quando si ha un segnale/ricezione basso e si iniziano a vedere i blocchi.

Lo streaming sta avanzando allo stesso modo della tecnologia di interlacciamento. L'interlacciamento è stato inventato per ridurre la larghezza di banda, che si tratti di un televisore o di Internet. Utilizzando lo streaming interlacciato, questa larghezza di banda ridotta sia per l'emittente che per l'utente finale.

Un esempio di tecnologia interlacciato essere utilizzato in streaming è a http://www.tvcatchup.com

(Il link qui sopra può funzionare solo se si vive nel Regno Unito)

24

Ho lavorato a stretto contatto con alcuni importanti aziende al lavoro ultimamente su questo stesso problema. Innanzitutto, come già accennato in altre risposte, viene utilizzata una Content Delivery Network per fornire una distribuzione ottimale.

Un CDN è fondamentalmente un cluster mondiale di server che contiene molte copie di una singola risorsa. Quindi, quando richiedi la risorsa da, per esempio, New York City, ottieni la versione di PHYSICAMENTE più vicina a New York. Ci sono molte ottime spiegazioni su come funziona CDN.

La tua domanda sulla larghezza di banda coinvolge una tecnologia chiamata Adaptive Bit Rate Streaming. Supponiamo che tu abbia una trasmissione in diretta streaming sul web. Poiché è in streaming, c'è una tecnologia chiamata segmenter che suddivide l'intero file in piccoli pacchetti che possono essere riuniti in un secondo momento. Ogni segmento è codificato in varie risoluzioni e capacità. Quindi, mentre tu, il cliente, chiedi i file, la CDN può dire quanto sia forte la connessione. Se è basso, lo streaming bit rate adattivo offre un file con una risoluzione inferiore. Hai mai notato come quando inizi a guardare i video online, è di bassa qualità ma migliora nel tempo? Questo è un perfetto esempio di questa tecnologia. Poiché la connessione si attenua ulteriormente ed è veloce, ottieni "segmenti" di qualità più elevata.Colpisci i siti web di aziende come Level 3 e Akamai e puoi leggere molti dei loro white paper su come funziona.

Ecco un articolo su Adaptive Bit Rate Streaming.

+3

Ho sempre pensato che i video avessero una qualità migliore nel tempo perché i nostri occhi/cervello sono in grado di indovinare quali sono i pixel "mancanti". È molto bello imparare la vera ragione. –

+1

Ottima risposta. Vorrei aggiungere anche alcune note sulla tecnologia video, che in questi giorni tende ad essere, il più delle volte, H.264. http://en.wikipedia.org/wiki/H.264/MPEG-4_AVC –

+0

molto ben risposto .. Ho imparato un bel po 'di cose ... – Flash

2

Se si tratta di streaming flash, ci sono server multimediali come Adobe Flash Media Server, Wowza e open-source Red5.

Questi sono utilizzati per lo streaming di flussi registrati o in diretta sul web.

L'utilizzo della larghezza di banda dipende dal codec video e audio.

È possibile visualizzare il supporto dei codec tramite Adobe Flash here. Inoltre si consiglia di controllare this Wikipedia article.

Questi potrebbero darti un'idea.

1

Un approccio semplice utilizzato in passato, ma che potrebbe essere o non essere utilizzato oggi, sarebbe utilizzare UDP anziché TCP. UDP ha un overhead inferiore. Per cose come un pdf o un programma hai bisogno di ogni byte, ne perdi pochi o pochi pacchetti e il tutto è inutile. Per il video e l'audio non è questo il caso, tendiamo a perdonare o forse a non notare i fotogrammi persi o l'audio mancante. UDP non ha l'affidabilità garantita di TCP, ma per lo streaming va bene, la velocità è più importante dell'affidabilità, purché sia ​​abbastanza buona.

Il motivo più importante per la possibilità di riprodurre video in streaming oggi è la tecnologia di compressione. Ogni nuova tecnologia (h.264) o versione (mpeg1, mpeg2, ...) richiede video di qualità migliore con lo stesso bitrate o bitrate inferiori per la stessa qualità o entrambi, una migliore qualità a bassi bitrate. L'algoritmo scambia la larghezza di banda per la potenza di calcolo sia sull'encoder che sul decodificatore. Idealmente la maggior parte del lavoro è sul lato di codifica in modo che l'algoritmo di decodifica possa essere semplice. Se hai mai provato a codificare una buona qualità di mpeg2 o h.264 o altro tipo di video, spesso impiega molto più tempo per codificare il video di quanto non faccia per riprodurre il video.

Aggiungete altri trucchi di rete come Content Delivery Network/Sistema descritto in altre risposte a questa domanda. Il lungo e il corto di questo è la riduzione del numero di hop tra te e un sistema con il contenuto e la diffusione della larghezza di banda complessiva di consegna del contenuto su molti server.

1

La tecnologia alla base di siti di live streaming:

Amazon EC2 - Per impostare le istanze di scala su e giù adattivo in base alle richieste.

Amazon Route S3: fornisce spazio nel servizio Web.

HTML5: utilizzato per strutturare e rendere il contenuto sul Web.

Wowza - Per lo streaming di video in diretta.