Pipelight: problem z serwisami VoD w Silverlighcie na Linuksie został rozwiązany

Kiedy Silverlight zaczął być stosowany jako standardowatechnologia budowania webowych odtwarzaczy wideo dla zabezpieczonychDRM-em treści, wielu użytkowników Linuksa poczuło się pozostawionychna lodzie. Wcześniej mogli korzystać z praktycznie wszystkich treścidostępnych w Sieci, ale za sprawą Silverlighta i PlayReady(microsoftowej technologii DRM), mnóstwo materiałów znalazło się pozaich zasięgiem. Co prawda na Linuksa i inne uniksopodobne systemyistnieje opensource'owa implementacja Silverlighta, rozwijany przezNovella Moonlight, ale z powodów licencyjnych wtyczka ta nie jest wstanie odtwarzać „zabezpieczonych” materiałów wideo –nie zawiera implementacji PlayReady.Rosnąca popularność serwisów VoD, korzystających z Silverlighta (wPolsce jest to choćby OnetVOD, w USA słynny Netflix) sprawiła, żelinuksowi deweloperzy zaczęli szukać sposobów na wyjście z tejnieprzyjemnej sytuacji. Pierwszym, któremu się to w pewnym stopniuudało był Erich Hoover, który stworzył narzędzie NetflixDesktop. Instalowało ono mocno zmodyfikowaną wersję środowiskauruchomieniowego Wine, wraz z preinstalowaną wersją Firefoksa iSilverlighta dla Windows, przy okazji dobrze integrując się zpulpitem Ubuntu. Trudno nazwać takie rozwiązanie przyjaznym dlaużytkownika (szczególnie innych niż Ubuntu dystrybucji), nie jest onoteż specjalnie wydajne (Wine musi przekładać wszystkie wywołania APIobcej przeglądarki), ale przynajmniej działało, dając tak oczekiwanydostęp do Netfliksa.[img=silverlight]Dwóch niemieckich programistów z Heidelbergu, przedstawiającychsię jako FDS-Team, zdołało teraz stworzyć znacznie lepszerozwiązanie. Ich projekt Pipelight pozwala na uruchamianie wszystkichaplikacji dla Silverlighta w linuksowej przeglądarce, takżekorzystających z PlayReady odtwarzaczy. Wykorzystuje on opracowaneprzez Hoovera łatki do Wine, ale w znacznie bardziej eleganckisposób. W skład Pipelighta wchodzi linuksowa biblioteka, ładowanajako wtyczka NPAPI do przeglądarek, oraz uruchamiana w Wine aplikacjaWindows, symulująca przeglądarkę i ładująca biblioteki DLLSilverlighta.Po wykryciu przez wtyczkę na stronie WWW programu w Silverlighcie,przekierowuje ona zawartość do działającego w tle procesu win32,działając jako pomost między przeglądarką a Silvelightem, w sposóbniezauważalny dla użytkownika. Cała komunikacja odbywa się po dwóchpotokach i dość prostym protokole. Wszystkie uchwyty, interfejsy iobiekty dostępne tylko po jednej stronie są odtwarzane jako fałszyweobiekty po drugiej stronie, dzięki czemu można wychwycić wszystkiewywołania i przekierować je przez potoki. Takie rozwiązanie pozwalana uruchomienie 32-bitowego Silverlighta nawet w 64-bitowychlinuksowych przeglądarkach.Oczywiście to nie wystarczy, by oglądać serwisy VoD – jeślirozpoznają one ciąg User Agent przeglądarki jako niezgodny z listąkompatybilnych OS-ów, to odmówią współpracy. FDS-Team radzi więc, bystosować Pipelighta w połączeniu z rozszerzeniami zmieniającymi ciągUser Agent przeglądarki, tak by udawać Windows.Tworząc Pipelighta autorzy mieli sporo szczęścia. Pierwsze próbyuruchomienia tak Silverlighta 5 nie przynosiły oczekiwanych efektów.Zgadywaniem udało się znaleźć takie wartości ustawieńkonfiguracyjnych, które pozwoliły na bezbłędne działanie – np.Erich Hoover rozwiązał problem z brakiem dźwięku, dostarczając łatkęzmieniającą jedno słowo w milionie linii kodu, poprawiającą błąd wporównywaniu łańcuchów, przez który Silverlight nie mógł wybraćpoprawnego strumienia audio.Obecnie Pipelight jest w wersji beta, jednak mimo tego działają wnim takie serwisy wideo jak Netflix, niemiecki Maxdome i polskiOnetVOD. Więcej informacji znajdziecie na stronieautorów projektu, są tam podane m.in. adresy repozytoriów PPA dlaUbuntu, skrypt instalacyjny dla Arch Linuksa i poradnik, jakskompilować Pipelighta samodzielnie.Wraz z wydaniem wersji stabilnej będzie można wreszcie powiedzieć,że kolejna przeszkoda na drodze do używania Linuksa na desktopiewłaśnie zniknęła. Co prawda sporo bowiem ostatnio szumuwokół implementacji technologii DRM w odtwarzaczach pisanych w HTML5,które teoretycznie powinny działać w każdej przeglądarce na każdymsystemie operacyjnym, ale w rzeczywistości nie nastąpi to tak szybko,większość serwisów VoD zainwestowała zbyt wiele w technologiesilverlightowe, by teraz wszystko zmieniać.

Wybrane dla Ciebie
Komentarze (46)