r   e   k   l   a   m   a
r   e   k   l   a   m   a

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

Strona główna AktualnościOPROGRAMOWANIE

Kiedy Silverlight zaczął być stosowany jako standardowa technologia budowania webowych odtwarzaczy wideo dla zabezpieczonych DRM-em treści, wielu użytkowników Linuksa poczuło się pozostawionych na lodzie. Wcześniej mogli korzystać z praktycznie wszystkich treści dostępnych w Sieci, ale za sprawą Silverlighta i PlayReady (microsoftowej technologii DRM), mnóstwo materiałów znalazło się poza ich zasięgiem. Co prawda na Linuksa i inne uniksopodobne systemy istnieje opensource'owa implementacja Silverlighta, rozwijany przez Novella Moonlight, ale z powodów licencyjnych wtyczka ta nie jest w stanie odtwarzać „zabezpieczonych” materiałów wideo – nie zawiera implementacji PlayReady.

Rosnąca popularność serwisów VoD, korzystających z Silverlighta (w Polsce jest to choćby OnetVOD, w USA słynny Netflix) sprawiła, że linuksowi deweloperzy zaczęli szukać sposobów na wyjście z tej nieprzyjemnej sytuacji. Pierwszym, któremu się to w pewnym stopniu udało był Erich Hoover, który stworzył narzędzie Netflix Desktop. Instalowało ono mocno zmodyfikowaną wersję środowiska uruchomieniowego Wine, wraz z preinstalowaną wersją Firefoksa i Silverlighta dla Windows, przy okazji dobrze integrując się z pulpitem Ubuntu. Trudno nazwać takie rozwiązanie przyjaznym dla użytkownika (szczególnie innych niż Ubuntu dystrybucji), nie jest ono też specjalnie wydajne (Wine musi przekładać wszystkie wywołania API obcej przeglądarki), ale przynajmniej działało, dając tak oczekiwany dostęp do Netfliksa.

Dwóch niemieckich programistów z Heidelbergu, przedstawiających się jako FDS-Team, zdołało teraz stworzyć znacznie lepsze rozwiązanie. Ich projekt Pipelight pozwala na uruchamianie wszystkich aplikacji dla Silverlighta w linuksowej przeglądarce, także korzystających z PlayReady odtwarzaczy. Wykorzystuje on opracowane przez Hoovera łatki do Wine, ale w znacznie bardziej elegancki sposób. W skład Pipelighta wchodzi linuksowa biblioteka, ładowana jako wtyczka NPAPI do przeglądarek, oraz uruchamiana w Wine aplikacja Windows, symulująca przeglądarkę i ładująca biblioteki DLL Silverlighta.

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ób niezauważalny dla użytkownika. Cała komunikacja odbywa się po dwóch potokach i dość prostym protokole. Wszystkie uchwyty, interfejsy i obiekty dostępne tylko po jednej stronie są odtwarzane jako fałszywe obiekty po drugiej stronie, dzięki czemu można wychwycić wszystkie wywołania i przekierować je przez potoki. Takie rozwiązanie pozwala na uruchomienie 32-bitowego Silverlighta nawet w 64-bitowych linuksowych przeglądarkach.

Oczywiście to nie wystarczy, by oglądać serwisy VoD – jeśli rozpoznają one ciąg User Agent przeglądarki jako niezgodny z listą kompatybilnych OS-ów, to odmówią współpracy. FDS-Team radzi więc, by stosować Pipelighta w połączeniu z rozszerzeniami zmieniającymi ciąg User Agent przeglądarki, tak by udawać Windows.

Tworząc Pipelighta autorzy mieli sporo szczęścia. Pierwsze próby uruchomienia 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 w poró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ą w nim takie serwisy wideo jak Netflix, niemiecki Maxdome i polski OnetVOD. Więcej informacji znajdziecie na stronie autorów projektu, są tam podane m.in. adresy repozytoriów PPA dla Ubuntu, skrypt instalacyjny dla Arch Linuksa i poradnik, jak skompilować Pipelighta samodzielnie.

Wraz z wydaniem wersji stabilnej będzie można wreszcie powiedzieć, że kolejna przeszkoda na drodze do używania Linuksa na desktopie właśnie zniknęła. Co prawda sporo bowiem ostatnio szumu wokół implementacji technologii DRM w odtwarzaczach pisanych w HTML5, które teoretycznie powinny działać w każdej przeglądarce na każdym systemie operacyjnym, ale w rzeczywistości nie nastąpi to tak szybko, większość serwisów VoD zainwestowała zbyt wiele w technologie silverlightowe, by teraz wszystko zmieniać.

r   e   k   l   a   m   a
© dobreprogramy
r   e   k   l   a   m   a
r   e   k   l   a   m   a

Komentarze

r   e   k   l   a   m   a
r   e   k   l   a   m   a
Czy wiesz, że używamy cookies (ciasteczek)? Dowiedz się więcej o celu ich używania i zmianach ustawień.
Korzystając ze strony i asystenta pobierania wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki.