Skip navigation.

exploreopera

| Help

Sign up | Help

Bezsensowne wypociny Michasia

Tymczasowo się gdzieś zapodziały...

Posts tagged with "video"

Znowu trochę o kodekach video

Nie ma wątpliwości, że potrzebna jest natywna obsługa video w przeglądarkach WWW. Zasadniczo wszystko jest relatywnie łatwe poza jednym, małym aspektem. Ów aspekt nazywa się kodek video. Niestety z powodów patentowych i technicznych jedynym formatem, jaki można zaimplementować, to Ogg Theora.

Stosunek jakości do objętości jest chyba porównywalny do odmiany h.263 stosowanej w plikach Flash. Wymagania sprzętowe są jednak trochę wysokie, a narzędzi do tworzenia stosownego video jest trochę mało. W dodatku format Adobe od pewnego czasu pozwala też na stosowanie kompresji On2 VP6 i h.264, które oferują znacznie lepsze parametry. Ciężko będzie przekonać ludzi, ale nie jest to niemożliwe.

Na jakimś blogu przeczytałem, że ktoś sugerował zastosowanie kodeka Dirac. Moim zdaniem jest trochę za wcześnie. Wymagania sprzętowe są chyba jeszcze większe niż w przypadku Theory, a z odpowiednim oprogramowaniem jest jeszcze gorzej. Co z tego, że przeglądarki będą bez problemu odtwarzać ów format, jak nie będzie czym wyprodukować stosownych plików? Ogólnie technologia jest trochę nowa i wymaga dopracowania i zwyczajnie czasu.

Aby pominąć trochę problemy patentowe, można część problemów zrzucić na barki producentów systemów operacyjnych. Niech oni dostarczą stosowne kodeki. Tutaj pojawia się jednak problem ogólnej niezgodności różnych formatów.

Microsoft ma w standardowej instalacji większości swoich systemów operacyjnych różne kodeki WMV. Udostępnia oczywiście też stosowny interface dla innych aplikacji. Jakość video i wymagania sprzętowe są też na bardzo dobrych poziomach.

Apple ma swój QuickTime, który w najnowszych odsłonach wspiera h.264. Posiada też jakieś starsze kodeki o mniejszych wymaganiach. Linuksy zaś w standardzie udostępniają tyko wspomnianą wcześniej Theorę.

Oczywiście każdy ze wspomnianych systemów oferuje możliwość instalacji dodatkowych kodeków, które uzupełniłyby zestaw standardowych. Tylko czym się różni instalacja dodatkowych kodeków od instalacji pluginów? Zasadniczo posiada dokładnie te same wady. Jak wiemy, tylko Flash zyskał dostateczną popularność i międzyplatformowość, a przy tym oferował dostateczną elastyczność.

Software'owe i Hardware'owe Flash Video

,

Podstawowa kompresja video stosowana w obiektach Flash to odmiana h.263, ma już sporo lat, więc jak na dzisiejsze standardy jest mało wymagająca. Kolejnym kodekiem video jest On2 VP6. Kiedy testowałem jego samodzielną wersję na systemach Microsoftu, obciążenie procesora było niewiarygodne. Jedyny kodek, który mnie aż tak pozytywnie zaskoczył swoimi wymaganiami podczas odtwarzania.

Strumienie video osadzone w obiektach Flash powodowały jednak dość duże obciążenie procesora. W mojej ocenie powinno być ono pomijalnie małe. Tak się jednak nie działo.

Niedawno natrafiłem na wpis na stronie http://www.phoronix.com/, który odsyłał do wpisu na pewnym blogu - http://blogs.adobe.com/penguin.swf/. Znalazłem tam wytłumaczenie tego problemu.

1. Klatka video jest konwertowana do postaci RGB.
2. Zostaje programowo osadzona na kanwie obiektu Flash.
3. Tak spreparowany kanwa jest umieszczana w buforze karty graficznej.

W standardowym odtwarzaniu video (z minimalnym wsparciem sprzętowym) jest tak:
1. Klatka video jest konwertowana do jednej z postaci, którą jest w stanie zdekodować karta video. Zazwyczaj jest to jakaś odmiana HSV albo HSL.
2. Taki obraz jest umieszczany w buforze karty graficznej.

Różnica to jakieś 26 MBps albo 211 Mbps dla kolorowego obrazu w rozdzielczości M, które procesor musi przepchać chyba kilka razy w różne strony. Może jeszcze do tego dochodzi konwersja do postaci RGB i czasami skalowanie. Brak elementarnej akceleracji jest straszny.

Swoją drogą, jeśli zastosują akcelerację OpenGl (albo DirectX), problemy ulegną rozwiązaniu.

O powolnym wyrugowywaniu Flasha...

, ,

Czas mija, niedawno usłyszałem, że Flash wzbogaci się o wsparcie MPEG-4 AVC/h.264. A przeglądarki z natywną obsługą Ogg Theora, jak nie było, tak nie ma. Cóż, są jednak też pewne pozytywne ruchy na scenie.
Microsoft postanowił stworzyć własne, międzyplatformowe środowisko programistyczne do osadzania w przeglądarkach WWW, nazywać się ma chyba Silverlight. Owe środowisko ma posiadać wsparcie dla kodeku VC-1, którego jakość jest porównywalna z wyżej wymienionym, nowym kodekiem video we Flashu. Oczywiście plugin dla X Linuksa musi poczekać.
Niemniej jednak jest to zawsze zwiększenie konkurencji na rynku. Dzisiaj zdecydowanie zbyt wiele ludzi błędnie myśli, że Flash jest integralną częścią przeglądarki. Nowy gracz może sprawić, że ludzie odpowiedzialni za tworzenie serwisów internetowych zwrócą większą uwagę na wszystkie, dostępne technologie, w tym natywną obsługę video, kiedy ta się tylko pojawi.
Kolejnym, pozytywnie mnie napawającym aspektem jest Snow. Jest to mało znany kodek, w dość wczesnej fazie rozwoju i o dużych wymaganiach podczas odtwarzania. Niemniej jednak jest, a jego stosunek kompresji jest lepszy, niż w przypadku Ogg Theory. Zawsze to jeden kodek więcej, o obsługę którego można wzbogacić przeglądarkę.
Zastanawiam się jeszcze, czemu QuickTime i standardowy plugin Microsoftu nie zrobiły takiej kariery. Oferowały przecież zdecydowanie lepszą kompresję, niż Flash 7. Były mniej popularne? Fakt, ale to była tylko nieznacznie mniejsza popularność. Może koszt licencji? Może brak możliwości wpływu na wygląd interface'u? Może gorsze narzędzia do kodowania video? Cóż, oby coś się na tym rynku pozytywnego dla mnie stało. Niestety z dnia na dzień tracę na to nadzieję...

Wyrugować Flash

, , , ...

Cóż, w dzisiejszych czasach technologia Flash jest tak popularna, że teraz to użytkownik, a nie webmaster, musi się o jej obsługę martwić.

Cóż, z faktami się nie dyskutuje. Można jednak się zastanawiać, jak pozbyć się tego problemu. W informatyce zazwyczaj rozbija się duży problem na mniejsze i dopiero owe mniejsze problemiki rozwiązuje. Nie widzę powdów, aby i nadmierną popularności Flasha rozwiązać tą metodą. Czyli na czym stoimi?

Reklamy Flash
To chyba jedyna dziedzina, która ulegnie samorozwiązaniu, jak rozwiąże się wszystkie pozostałe. W dodatku akurat użytkownikom nie zależy, aby reklamy działały, więc ten dział można pominąć.

Gierki Flash
Cóż, tworzenie gierek opartych na standardowych możliwościach przeglądarek to raczej ciekawostka, niż cokolwiek innego. W dodatku zagwarantowanie ich działania w konkurencyjnych produktach często jest bardzo kłopotliwe. W najbliższej przyszłości do tego zastosowania Flash będzie się zdecydowanie lepiej nadawał. Na szczęście owe gierki są sprawą dość marginalną i można je pominąć.

Filmy
Tutaj rozwiązanie na szczęście jest. Można zaimplementować w przeglądarce wsparcie dla Ogg Theora. Jeśli dać użytkownikom narzędzia do ręcznej, precyzyjnej konwersji ich filmów na ten format, oraz narzędzia do tworzenia własnych interface'ów do odtwarzacza, co w przypadku konkurencyjnych technologii jest zbyt kosztowne, mamy chyba rozwiązane systemy społecznościowe.

Koejną zaletą jest to, że dzięki całkowitej otwartości kodeka, przy odrobinie dobrej woli ze strony producentów sprzętu i przeglądarki WWW, będzie można zapewnić płynne odtwarzenie Theory przy minimalnym zapotrzebowaniu na moc sprzętu. W przypadku technologii Flash, bez otwierania jej źródeł, nie da się tego zrealizować.

Jeszcze tylko zrobić stosowny plugin dla przeglądarek Microsoftu i (może) Apple. W każdym razie, im szybciej dostaniemy stosownie udoskonalone przeglądarki, tym lepiej. Uczciwie trzeba jednak przyznać, że na chwilę obecną Ogg Theora nie prezentuje najwyższej wydajności kompresji.

Audio
Skoro jest rozwiązanie dla video, automatycznie jest też rozwiązanie dla audio. Jeśli jednak kodek Ogg Theora nie należy do czołówki, o tyle kodek Ogg Vorbis jest już jednym z najlepszych. Cóż, tylko czekać na stosowne przeglądarki i pluginy.

Wykresy
Cóż, wykresy to grafika wektorowa. Powiedziałbym nawet, że esencja grafiki wektorowej. Technologia SVG chyba już w tej chwili jest w stanie przejąć na siebie ten ciężar. Tym bardziej, że bez większych problemów, w dowolnym języku można stworzyć stosowne skrypty je generujące. Tylko ten nieszczęsny plugin dla przeglądarki Microsoftu... Inna sprawa, że Flash się (chyba) nie zadomowił na tym polu dostatecznie.

Inna grafika wektorowa
Jakoś tak większość schematów, która idealnie pasuje do zostania grafiką wektorową, jest robiona jako grafika rastrowa. Jakoś nie mogę sobie przypomnieć przypadku, aby było inaczej. No, czasami są robione jako pliki pdf, co jednak też nie jest zbyt dobrym rozwiązaniem. W każdym razie, im na tym polu SVG wcześniej się pojawi, tym lepiej. Czyli znowu ten brak pluginów dla przeglądarki Microsoftu...

Animowane ozdobniki
Animacje Flash są czasami stosowane jako różnego rodzaju ozdobniki na stronach. Drobny element, który coś się tam rusza. Cóż, SVG jest już w tej chwili w stanie przejąć te zadanie. Pozostaje tylko problem z pluginami do przeglądarki Microsoftu. Aczkolwiek w tym wypadku nie ma specjalnie argumentów za zmianami. Poza tym wspomniane zastosowanie jest dość marginalne.

Całe serwisy w technologii Flash
Chyba najgorsze zastosowanie technologii Flash w Sieci. W przypadku filmów niestety to chyba już standard, że cały, oficjalny serwis jest tak zrobiony. Cóz, może to i ładnie wygląda, może nie trzeba się martwić się o zgodność z różnymi przeglądarkami, wygodne w nawigacji i czytaniu to to jednak nie jest. Może, jak zostaną rozwiązane problemy z audio i video na stronach www, ktoś zacznie jednak tworzyć takie serwisy w konwencjonalnych technologiach. Ten problem będzie trzeba chyba zostawić sobie na sam koniec.

Podsumowanie
Trzeba jak najszybciej wprowadzić obsługę Ogg Theora i Ogg Vorbis do przeglądarek. Trzeba też zrobić stosowne pluginy dla zacofanej przeglądarki Microsoftu. W sumie może to zrobić zarówno Opera, jak i Mozilla. Zawsze to dodatkowa reklama dla tych przeglądarek. Do tego czasu, jedyną rzeczą, jaką mogą robic webmasterzy, to stosować SVG, gdzie się tylko da.

WWW Video

,

Cały czas uważam, że najlepszym sposobem osadzania obiektów video na stroanach WWW jest tag a. Kliknę sobie na link, otworzy mi się odtwarzacz multimedialny i wszystko będzie fajnie. Pozostają tylko cztery, małe problemy.

1. W jakim formacie ów film umieścić, aby prawie wszyscy mogli go obejrzeć?
2. Ile osób ma dobrze skonfigurowaną przeglądarkę?
3. Gdzie umieścić statyczne reklamy obok video?
4. Jak bardziej zintegrować owe video ze stroną.

Rozwiązań kodeków mamy kilka. Wszystkie mają swoje wady i zalety. Pisałem o tym wcześniej, a od tamtej pory niewiele się nie poprawiło. Mogę tylko zauważyć, że jedynym, dostatecznie wydajnym i dopracowanym kodekiem, który zapewnia zgodność z założeniami WWW, jest Ogg Theora. Opera zaś powiedziała, że wesprze go natywnie.

Gdyby na podobny krok zdecydowali się też inni producenci przeglądarek, byłoby dobrze. Względnie, aby stosowne pluginy dla wszystkich przeglądarek były dostatecznie popularne. Na chwilę obecną nawet Opera ma to dopiero w planach.

Istnieje jednak pewne prawdopodobieństwo, że standard zwyczajnie się nie przyjmie. Na chwilę obecną z narzędziami do tworzenia plików Ogg Theora i ich odtwarzania jest nienajlepiej. Wypada jednak zauważyć, że na rynku jest obecnych wiele konkurencyjnych, niezgodnych ze sobą rozwiązań. W takiej sytuacji łatwiej jest wypromować jeden standard.

Web i Video

,

Jak najlepiej w Internecie zaprezentować treści video? Szukam już bardzo długo informacji na ten temat, ale idealnego rozwiązania nie ma.

Zacznijmy od samego osadzania video na stronie, pomińmy w tym miejscu aspekt samego kodeka video.

Sposób 1
Najbardziej niezawodnym sposobem jest zastosować jeden z najstarszych tagów html, a mianowicie <a>. W zależności od konfiguracji przeglądarki mogą nastąpić trzy, różne rzeczy:
1. Plik może zostać pobrany na dysk twardy.
2. Może zostać uruchomiona domyślna aplikacja do obsługi owych plików.
3. Przeglądarka może uruchomić dany plik przy pomocy zainstalowanej wtyczki.

Niestety z konfiguracją przeglądarki bywa różnie, czyli zazwyczaj źle. Bardzo wiele osób może w tym miejscu trafić na barierę, której nie zdoła pokonać. Przeglądarka, zamiast wyświetlić im video, wyświetli jakiś niezrozumiały komunikat.

Nawet, jeśli z konfiguracją przeglądarki nie było problemów, pozostaje ten problem, że treść video nie zostanie wyświetlona na stronie, na której są umieszczone reklamy, sekcja nawigacyjna, czy inne istotne elementy.

Sposób 2
Kolejnym sposobem jest zastosowanie nowego tagu <object>. Dzięki temu treść video będzie można umieścić bezpośrednio na stronie, obok sekcji nawigacyjnej, reklam i innych, istotnych elementów.

Niestety ta opcja też ma swoje wady. Pierwszy jest taki, że różne przeglądarki różnie interpretują sam tag <object>. Kolejnym jest taki, że tylko kilka wtyczek jest dostatecznie popularnych, aby można było polegać na ich obecności. Z powodów bezpieczeństwa nie można polegać na tym, że przeglądarka sama sobie stosowną wtyczkę zainstaluje. Jakby tego było mało, ta sama wtyczka potrafi występować w różnych wersjach, które obsługują różne kodeki video.

Część osób postanowiła więc dodać trochę kodu JavaScript, który w zależności od przeglądarki dokonywałby stosownych modyfikacji w kodzie html, aby treść video została odpowiednio osadzona. Inni postanowili polegać na historycznym, niestandardowym tagu <embed> i niestandardowej obsłudze tagu <object> przez przeglądarkę Microsoftu. Jeszcze inni postanowili zrobić użytek z komentarzy warunkowych, jest to zdecydowanie najlepszy sposób, aczkolwiek tylko sporadycznie stosowany.

Sposób 3
Najlepszym rozwiązaniem jest jednak połączenie powyższych sposobów. Dzięki temu osoby, które mają stosowne wtyczki zobaczą obraz bezpośrednio na stronie, a pozostałe będą mogły go łatwo ściągnąć.

Niestety cały czas pozostaje problem kodeków. Jest kilka rozwiązań, które wypada rozważyć.

Rozwiązanie Microsoftu
Bardzo dobry współczynnik kompresji w najnowszej wersji. Wsparcie tylko dla systemów Microsoftu, niemniej bardzo popularna wtyczka.

Rozwiązanie Apple
Bardzo dobry współczynnik kompresji w najnowszej wersji. Wsparcie tylko dla systemów Apple i Microsoftu, niemniej dość popularna wtyczka.

Rozwiązanie Real.com
Bardzo dobry współczynnik kompresji w najnowszej wersji. Wsparcie dla wielu systemów operacyjnych, niestety popularność wtyczki mogłaby być większa.

Rozwiązanie Adobe
Firma Adobe posiada technologię Flash, która umożliwia dość łatwe wyświetlanie treści video. Wtyczka jest bardzo popularna. Niestety jakość video silnie zależy od zastosowanej wersji wtyczki i systemu operacyjnego, a z tym bywa bardzo różnie. Najnowsza wersja posiada jednak bardzo dobry współczynnik kompresji.

Zastosowanie mpeg1
Nie powstała konkretna wtyczka dla tego formatu video, niemniej jako jedyny powinien dać się odtworzyć praktycznie na dowolnym komputerze. Niestety jego współczynnik kompresji odbiega znacząco od pozostałych rozwiązań.

Zastosowanie mpeg4
Format zapewna bardzo wysoki współczynnik kompresji, niestety nie powstała dla niego konkretna wtyczka. Wypada jednak zaznaczyć duże pokrewieństwo z rozwiązaniem Apple. Niestety, mimo dostępności odpowiedniego oprogramowania odtwarzającego dla wielu platform, jego popularność jest bardzo ograniczona.

Zastosowanie Ogg Theora
Wypada wspomnieć o jedynym, otwartym kodeku, który nadaje się na potrzeby sieciowego video. Jest to kodek Ogg Theora, aza audio odpowiada Ogg Vorbis. Niestety rozwiązanie to znajduje się jeszcze we wczesnej fazie rozwoju i implementacja jest bardzo ograniczona. Niemniej prezentowany stopień kompresji jest godny uwagi.

Zastosowanie „DivX;)”
Wypada wymienić tutaj hybrydę MPEG-4 ASP (DivX5, XviD) z dzwiękiem mp3 w kontenerze avi, jaka często jest stosowana dla materiałów video o wątpliwej legalności, które można sobie ściągnąć z Internetu. Prezentowany współczynnik stopnia kompresji jest dość wysoki. Nie powstała właściwie konkretna wtyczka dla tego rozwiązania, ale praktycznie każdy komputer będzie w stanie odtworzyć taki plik.

Zastosowanie Javy
Java nie jest kodekiem, ale językiem programowania, dzięki któremu można stworzyć praktycznie dowolną aplikację, która będzie działała praktycznie na dowolnym systemie operacyjnym. Można więc stworzyć w tym języku odtwarzacz multimedialny osadzony na stronie. Niestety wydajność takiego rozwiązania, a tym samym współczynnik kompresji, będzie bardzo oganiczona.

W przypadku kodeków video idealnym rozwiązaniem też wydaje się być zastosowanie kilku, różnych kodeków. Niestety tutaj wskazanie konkretnego faworyta jest znacznie bardziej kłopotliwe.
July 2008
SMTWTFS
June 2008August 2008
12345
6789101112
13141516171819
20212223242526
2728293031