Smooth Streaming z zewnątrz i od środka

Kilka tygodni temu pokazaliśmy publicznie, jak wyglądać i działać będzie technologia Smooth Streaming (określana do tej pory adaptative streamingiem). Jej idea jest prosta – pozwolić na automatyczne dopasowywanie się jakości transmisji obrazu wideo, w zależności od warunków sieciowych panujących pomiędzy serwerem, a klientem usługi. W przypadku naszego tradycyjnego rozwiązania dla mediów – Windows Media Services – kwestię tę rozwiązano poprzez możliwość jednoczesnego utworzenia więcej niż jednego profilu strumienia (multiple-bit-rate – MBR). Niestety mechanizm MBR miał swoje ograniczenia, w szczególności nie był wspierany przez odtwarzacze wykorzystujące technologię Silverlight oraz nie pozwalał na wykorzystanie w transmisji protokołu HTTP (progressive download). Smooth Streaming zmienia tę sytuację diametralnie.

Jak wyglada Smooth Streaming?

Choć na komplet produktów trzeba będzie poczekać jeszcze pewnie kilka miesięcy, technologię Smooth Streaming można zobaczyć w działaniu już teraz na stronie SmoothHD. Jest to mozliwe dzięki porozumieniu zawartemu pomiędzy Microsoft a Akamai, największą siecią CDN (content delivery network) na świecie. W jego ramach Akamai dostarczać będze usługę AdaptiveEdge Streaming for Microsoft Silverlight, gwarantującą klientom optymalną jakość klientom niezależnie od lokalizacji geograficznej (no, może z dokładnością do pokoju hotelowego w Nowym Sączu, gdzie właśnie się znajduję :)). Imponująca jest już sama skala wdrożenia – 900 sieci oraz 36 tysięcy serwerów! Gorąco polecam zapoznanie się z działającym Tech Preview – to przy okazji świetny sprawdzian, na ile nasze łącza są rzeczywiście szerokopasmowe:

image

Jak działa Smooth Streaming?

1. Pierwszym krokiem jest przygotowanie w odpowiedni sposób materiałów multimedialnych. Można to zrealizowac już w tej chwili korzystając z Expression Encoder 2 wraz z Service Pack 1. Pozwala on na utworzenie więcej niż jednego profilu strumienia oraz jego bezpośrednią publikację na serwerze WWW. Co istotne, efektem tej pracy będzie pojawienie się kilku plików wideo odzwierciedlających bezpośrednio zdefiniowane przez twórcę profile:

image

2. Serwer IIS 7, uzupełniony o rozszerzenie Smooth Streaming (pierwsza wersja będzie dostępna do pobrania na początku przyszłego roku), podczas inicjalizacji komunikacji z odtwarzaczem przesyłać będzie manifest zawierający informacje o dostępnych profilach strumieni. Odtwarzacz sam dobierze odpowiednią jakość i rozpocznie pobieranie treści.

3. Serwer WWW dostarczać będzie strumień wideo “porcjując” go w locie, czyli dzieląc fizyczne pliki na niewielkie fragmenty. Jeśli z jakiś powodów parametry łącza pomiędzy klientem a serwerem ulegną zmianie, kolejna porcja danych pochodzić będzie automatycznie z innego profilu. Wszystko to nie będzie wymagało żadnych ingerencji użytkownika ani konieczności ponownego buforowania strumienia, co istotnie wpłynie na komfort odbioru. Oficjalnie zapowiedziano również wsparcie dla zabezpieczeń oferowanych przez platformę PlayReady oraz formatu H.264. Myślę, że zbliżamy się również nieuchronnie do momentu, w którym możliwa będzie w tym trybie realizacja transmisji na żywo – ostatniego bastionu tradycyjnych media serwerów.