Smooth Streaming: video in alta definizione senza buffering

Presentata da pochi giorni la nuova funzionalità di Silverlight Smooth Streaming per l’erogazione di contenuti video via HTTP attraverso un applicazione/player basato su Silverlight.
Finalità di questa nuova funzionalità supportata in Silverlight, è quella di ottimizzare e migliorare l’esperienza utente nella fruizione dei contenuti video ad alta definizione sul Web,  permettendo di ovviare agli spiacevoli fenomeni di buffering in visualizzazione, offrendo  la fruizione del video alla massima qualità supportabile in relazione alle condizioni di banda e alle potenzialità/performance della CPU del client utilizzatore.
Lo Smooth Streaming sarà utilizzabile attraverso una nuova funzionalità che verrà aggiunta alle funzionalità Media già presenti attualmente per IIS7 (la nuova versione sarà disponibile in CTP nel corso dei primi mesi del 2009).

La trasmissione del contenuto video avviene attraverso l’invio di “Chunk” di video di circa 2 secondi, codificati con uno specifico livello di qualità / bitrate. Durante la riproduzione il player può in qualunque momento, in base alla banda disponibile ed al livello di utilizzo di CPU, richiedere al server la modifica del livello di qualità\bitrate del video, ricevendo così da quel momento in poi “chunk” di video con bitrate differente, offrendo sempre il flusso video al massimo della qualità possibile in base alle condizioni presenti. La transizione a runtime tra i differenti livelli di qualità previsti in fase di codifica nei “chunk“ avviene in modo istantaneo, eliminando i classici fenomeni di blocco immagine e buffering del video.

In fase di codifica del video e possibile stabilire i diversi livelli di qualità\birate che si vogliono mettere a disposizione del player, ed è già disponibile con il Service Pack 1 per Microsof Expression Encoder 2 un primo profilo per effettuare la codifica  di contenuti per questa funzionalità, oltre ad altre novità offerte dalla SP1 di Encoder.

Assieme allo Smooth Streaming per IIS7 e Silverlight è stata anche annunciata una partnership con Akamai, una delle più importante reti di distribuzione di contenuti su internet (CDN) con a disposizione degli utilizzatori più di 36,000 server e oltre 900 reti distribuite a livello mondiale.  Akamai ha annunciato che supporterà nella sua rete lo Smooth Streaming, già dalla prima technology preview disponibile all’inizio del prossimo anno (Q1 09), mettendolo a disposizione per la distribuzione di contenuti a livello modiale attraverso l’introduzione di IIS7 nella propria CDN con il servizio “Akamai AdaptiveEdge Streaming for Microsoft Silverlight”.

Provare per credere!
www.smoothhd.com

A questo link trovate disponibile un applicazione demo implementata da Akamai in collaborazione con Microsoft dove viene già utilizzata questa nuova funzionalità. (I riferimenti sul comunicato ufficiale di presentazione del servizio di Akamai con Microsoft Silverlight sono disponibili all'interno di questa pagina).

Complessivamente il processo e la struttura necessaria per erogare contenuti via HTTP sfruttando questa nuova funzionalità può essere rappresentata come di seguito:

Microsoft Silverlight Smooth Streaming

Con Expression Encoder 2 SP1 si procede con la codifica del video tabilendo i bitrate che si vogliono rendere disponibili ai client
• Si ottengono dalla codifica una serie di file contigui pari al numero dei livelli di bitrate impostati per la codifica in MP4 container, fornendo anche un manifest con i metadati relativi ai bitrate disponibili.
• Il tutto viene appoggiato nella piattaforma di streaming su Windows Server 2008 e IIS7 Smooth Streaming
• IIS7 Smooth Streaming eroga a runtime i “chonk” di video a diversi bitrate verso il  player Silverlight
• Il player Silverlight permette di fruire il video, richiedendo dinamicamente al server “Chunk” al miglior livello di bitrate possibile tra quelli messi a disposizione nel file, compatibilmente alle condizioni di banda e CPU disponibili.

Questo processo, si differenzia come processo e tecnica di erogazione dalle precedenti tecnologie quali il Multiple Bit Rate (MBR) disponibile in Windows Media Services 4.0 (presentato nel 2000), dove i i flussi video a diversi bit rate comportavono lo switch da un flusso all’altro, con tempi di buffering del player dovuti alla richiesta del nuovo flusso di diverso bit rate al server. In questo caso a runtime il player sfrutta lo switch tra i “chunk” di 2 sec per selezionare il bitrate ottimale, garantendo una selezione praticamente istantanea senza buffering o freeze del video.

Roberto