Aby obejść problem wąskiego gardła, wynikający z ograniczonych możliwości serwera, do transmisji strumieni danych audio/wideo można wykorzystać technologię peer-to-peer (P2P), powszechnie wykorzystywaną w sieciach eDonkey, BitTorrent czy Kazaa.
Jak to działa?
W telewizji online opartej na architekturze klient-serwer
dane audio/wideo są wysyłane przez serwer
osobno do każdego odbiorcy. Oznacza to, że jeśli daną
audycję chce oglądać jednocześnie tysiąc osób, to
nadawca musi transmitować tysiąc identycznych strumieni
danych. Ponieważ moc i przepustowość serwera
są ograniczone, dlatego bazujący na takim modelu
nadawca nie ma możliwości obsłużenia dowolnie dużej
liczby widzów.
W odróżnieniu od architektury klient-serwer,
w sieci P2P każdy komputer może pełnić zarówno rolę
klienta, jak i serwera. Dzięki temu węzeł sieci, który
pobierze dane z serwera, może następnie zostać nadawcą,
udostępniając je kolejnym chętnym. W ten
sposób szybko rośnie liczba dostępnych źródeł, co
pozwala wielokrotnie zwiększyć możliwości transmisji
danych – widać to dobrze na rysunku.
Problemy
Zastosowanie technologii peer-to-peer do transmisji
danych telewizyjnych wymaga jednak dokonania
pewnych modyfikacji, gdyż tradycyjne sieci P2P są
przeznaczone do dystrybucji plików, a nie strumieni.
W odróżnieniu od transmisji plików, w sieciach strumieniowych
dane muszą zostać przesłane w określonych
ramach czasowych po to, aby zachować ciągłość
transmisji. Opracowano więc sieci peer-to-peer działające
w czasie rzeczywistym, które zamiast zapisywać
pobrane dane do pliku, wyświetlają je od razu
w oknie aplikacji.
Kiedy uruchamiamy wybrany kanał telewizyjny,
klient P2P łączy się z serwerem, z którego pobiera adresy
użytkowników sieci oglądających tę samą audycję,
a następnie zaczyna od nich pobierać strumień
danych. Ponieważ podczas inicjowania kanału zostajemy
dopisani do bazy danych serwera zawierającej
użytkowników dystrybuujących dany kanał, nasz adres
zostanie przekazany innym osobom pragnącym
oglądać ten sam kanał.
Do płynnego odtwarzania audycji wymagany jest
ciągły strumień audio/wideo, dlatego odtwarzacze
P2P TV muszą buforować dane przed ich wyświetleniem.
Działa to w ten sposób, że strumień danych jest
dzielony na segmenty.
Po ściągnięciu całego segmentu
zostaje on odtworzony, a aplikacja pobiera w tym
czasie kolejny blok danych. Przez cały czas węzły wymieniają się między sobą informacjami na temat dostępności danych dla kolejnych segmentów. Na ich
podstawie specjalny algorytm decyduje, jakie fragmenty
danych pobrać i od kogo.
A co z jakością?
Jakość transmisji w telewizji P2P zależy od tego ile
osób w danej chwili ogląda wybrany kanał. Im więcej
użytkowników online, tym lepsza jakość i tym szybciej
program może zostać załadowany. Musimy się liczyć
jednak z tym, że jeśli źródło sygnału zostanie odłączone
lub liczba użytkowników kanału będzie niewystarczająca,
to wystąpią przerwy w odbiorze audycji.
W związku z tym, że sygnał, który do nas dociera
przechodzi po drodze przez wiele komputerów pośrednich,
jest on zazwyczaj opóźniony w stosunku do
oryginalnego źródła o kilka minut.
Rodzaje stacji TV P2P
Internetowe platformy telewizyjne można podzielić
na dwie grupy: te, które mają ograniczony repertuar
(zarządzany przez operatora aplikacji) oraz otwarte,
które pozwalają użytkownikom nadawać ich własne
audycje. W obu przypadkach zasoby telewizyjne mogą
zostać udostępnione na dwa sposoby. Pierwszy
sposób to wideo na żądanie, polegające na dostarczaniu
użytkownikom wcześniej nagranych audycji.
Druga metoda to prezentacja materiału na żywo
– zazwyczaj jest to redystrybucja tradycyjnych kanałów
telewizyjnych, ale dostępnych jest coraz więcej
kanałów niezależnych.
Aplikacje
Typowa aplikacja telewizji P2P składa się z dwóch
modułów. Pierwszy z nich to klient sieci peer-to-peer
odpowiedzialny za pobieranie i redystrybucję danych.
Drugi moduł to odtwarzacz, który wyświetla
pobrany strumień audio/wideo.
Czasami zamiast zintegrowanego odtwarzacza do prezentacji danych
jest wykorzystywana któraś z aplikacji multimedialnych
dostępnych w systemie – najczęściej są to Windows
Media Player lub RealPlayer. Taki zewnętrzny
odtwarzacz jest w stanie wyświetlać audycję dzięki
temu, że moduł P2P tworzy na komputerze lokalny
strumień danych.
Najpopularniejsze stacje telewizyjne p2p
Joost
Platforma Joost.com rozpoczęła
działalność w 2006 roku pod
nazwą kodową \”The Venice Project\”.
Jej autorami są Janus Friis
i Niklas Zennstrom, którzy
wcześniej stworzyli Kazę i Skype’a.
Obecnie użytkownicy Joosta
mają dostęp do ponad 20
tys. klipów pogrupowanych
w 400 kanałach. Filmy można
oglądać \”na życzenie\”, jak również
uruchamiać dostępne kanały.
W tym drugim przypadku prezentowane
będą po kolei wszystkie
klipy wybranego kanału.
Silną stroną platformy jest jej oferta
programowa. Dzięki współpracy
z potentatami branży rozrywkowej
i informacyjnej (Viacom,
CBS, CNN, Paramount Pictures,
Warner Bros., Reuter) Joost jest
w stanie zaoferować użytkownikom
wiele audycji znanych z tradycyjnej
telewizji.
Wśród oferty
znajdziemy więc filmy fabularne,
seriale telewizyjne (MacGyver,
Star Trek, Transformers), kanały
muzyczne (MTV, VH1) oraz sportowe
(NBA, NHL, piłka nożna).
Niestety, ze względu na ograniczenia
licencyjne, znaczna część
oferowanego materiału dostępna
jest jedynie dla widzów z USA.
Chociaż platforma nie umożliwia
użytkownikom nadawania własnych
programów, twórcy Joosta
dali widzom możliwość pewnej interakcji.
Mogą oni przyznawać
oceny oglądanym audycjom oraz
prowadzić za pośrednictwem komunikatora
rozmowy z innymi
osobami oglądającymi ten sam
kanał. Zaimplementowana została
także opcja tworzenia własnych
kanałów z ulubionych klipów.
Babelgum
Babelgum to klient P2P TV stworzony
przez irlandzką firmę Babel
Networks. Aplikacja pozwala
oglądać online teledyski, zwiastuny
filmów, krótkie filmy, animacje,
wiadomości oraz wydarzenia
sportowe. Do materiałów
uzyskujemy dostęp wybierając
jeden z 14 dostępnych kanałów,
bądź też korzystając z wbudowanej
wyszukiwarki klipów.
Babelgum pozwala oceniać oglądane
filmy oraz dopisywać je
do listy ulubionych. Wkrótce ma
się pojawić możliwość rekomendowania
obejrzanych audycji
oraz prowadzenia dyskusji za
pośrednictwem serwisów społecznościowych.
Ciekawą opcją
jest tworzenie spersonalizowanych
kanałów tematycznych
(smart channels), których zawartość
jest generowana automatycznie
na podstawie zdefiniowanych
przez użytkownika słów
kluczowych.
Dostawcami treści dla platformy
są m.in. Spike Lee, Reuters, Associated
Press, Ministry of Sound,
BBC. Poza znanymi firmami
Babelgum intensywnie rozwija
współpracę z niezależnymi
producentami, którzy mogą liczyć
na 50% zysków osiąganych
przez nadawcę z tytułu wyświetlanych
podczas audycji reklam.
To właśnie dla niezależnych
twórców stworzono internetowy
festiwal filmów – \”Babelgum Online
Film Festival\”. Uczestnicy
konkursu mogą wygrać 140 tys.
euro, a nadesłane filmy będą
oceniane przez amerykańskiego
reżysera Spike’a Lee.
Sopcast
Sopcast to chińska aplikacja,
która w odróżnieniu od prezentowanych
wcześniej programów
nie ma własnych zasobów wideo
i nadaje wyłącznie materiały
udostępniane przez użytkowników
platformy. Aplikacja transmituje
audycje w formatach Windows
Media Player oraz RealPlayer
i dlatego wymaga obecności
tych odtwarzaczy w systemie.
Po zainstalowaniu i uruchomieniu
programu uzyskujemy dostęp
do jego funkcji, które zostały
pogrupowane w osobne zakładki.
Zakładka Kanały prezentuje
listę dostępnych w danym
momencie kanałów. Ponieważ
liczba kanałów cały czas się
zmienia, dlatego lista ta jest co
chwilę aktualizowana. Standardowo
kanały są pogrupowane
w kategorie, ale możemy je również
przeglądać według rodzaju,
kraju czy języka. W wyborze audycji
pomocny może być wyświetlany
obok nazwy każdego
kanału wskaźnik informujący
o jakości transmisji.
Kiedy już uruchomimy wybrany kanał, możemy
włączyć opcję nagrywania
oglądanego strumienia do pliku.
Oprócz transmisji na żywo Sopcast
oferuje wideo na żądanie
(zakładka VoD), gdzie znajdziemy
ponad 100 filmów i seriali telewizyjnych.
Ostatnia zakładka programu
umożliwia uruchomienie serwera
służącego do nadawania
własnego programu telewizyjnego.
Według autorów, działająca
na domowym komputerze aplikacja
pozwala transmitować
sygnał do 10 tysięcy widzów,
przy czym jeden komputer jest
w stanie nadawać 5-10 kanałów
jednocześnie.
Jak nadawać własną audycję tv?
Wchodzimy na stronę http://sopcast.org i z górnego menu wybieramy
Broadcast rozpoczynając proces
rejestracji własnego kanału. Po
kolei wpisujemy: nazwę kanału,
hasło administratora, określamy czy
kanał ma być prywatny czy publiczny
oraz podajemy jego typ, kraj i język.
Na koniec wprowadzamy krótki
opis i klikamy przycisk Register.
Następnie dodajemy nasz kanał
do jednej z kilku tysięcy dostępnych
grup. Obok każdej grupy
znajdziemy informację czy jest
to grupa otwarta (Public), czy
też przyłączenie się do niej wymaga
zgody administratora
(need auth).
Teraz możemy już uruchomić
aplikację. Otwieramy zakładkę
Mój Serwer, gdzie musimy zdefiniować
źródło sygnału. Może
to być strumień danych, katalog
lokalny lub pojedynczy plik.
Następnie wpisujemy ID kanału
i jego nazwę oraz nazwę i hasło
naszego konta w Sopcast. Na
koniec klikamy Start.
Jeśli wszystko zrobiliśmy prawidłowo,
nasza stacja powinna
pojawić się na liście aktywnych
kanałów.