Podstawy wideo

Flash Player 9 i nowsze wersje, Adobe AIR 1.0 i nowsze wersje

Jedną z ważnych cech programu Adobe® Flash® Player i środowiska Adobe® AIR™ jest możliwość wyświetlania informacji wideo i manipulowania nimi za pomocą kodu ActionScript w sposób taki sam jak w przypadku obsługi innych materiałów wizualnych — na przykład obrazów, animacji czy tekstu. Tworząc plik Flash Video (FLV) w programie Adobe Flash CS4 Professional, można wybrać karnację zawierającą standardowe elementy sterujące odtwarzaniem. Nie trzeba jednak ograniczać się do zamkniętej listy gotowych wariantów. Język ActionScript udostępnia środki do precyzyjnego sterowania wczytywaniem, wyświetlaniem i odtwarzaniem wideo — a to oznacza, że możliwe jest tworzenie własnych karnacji odtwarzacza wideo lub stosowanie materiałów wideo na różne, nietypowe sposoby. Praca z wideo w języku ActionScript polega w istocie na pracy z kilkoma klasami:

  • Klasa Video : Klasyczne pole z zawartością wideo na stole montażowym jest wystąpieniem klasy Video. Wystąpienie klasy Video jest obiektem ekranowym, zatem można nią manipulować przy użyciu tych samych technik, które stosowane są do pracy z innymi obiektami wyświetlanymi — na przykład ustalać położenie, stosować przekształcenia oraz stosować filtry i tryby mieszania.

  • Klasa StageVideo : Klasa Video używa zwykle renderowania i dekodowania programowego. Gdy urządzenie udostępnia przyspieszanie sprzętowe GPU, najskuteczniejszą metodą wykorzystania przyspieszania sprzętowego wyświetlania w aplikacji jest zastosowanie klasy StageVideo. Interfejs API klasy StageVideo zawiera zestaw zdarzeń powiadamiających kod o tym, kiedy należy przełączać się między obiektami StageVideo i Video. W przypadku odtwarzania wideo na stole montażowym mają zastosowanie pewne niewielkie ograniczenia. Jeśli aplikacja może działać przy tych ograniczeniach, warto użyć w implementacji interfejsu API klasy StageVideo. Zobacz Wskazówki i ograniczenia .

  • Klasa NetStream : podczas ładowania pliku wideo, na którym będzie operował kod ActionScript, instancja klasy NetStream reprezentuje źródło treści wideo — w tym przypadku strumień danych wideo. Razem z wystąpieniem klasy NetStream używany jest także obiekt NetConnection, który reprezentuje połączenie z plikiem wideo — niczym tunel, przez który przesyłane są dane wideo.

  • Klasa Camera : Podczas pracy z danymi wideo z kamery podłączonej do komputera użytkownika wystąpienie klasy Camera reprezentuje źródło treści wideo — kamerę wideo użytkownika i dane wideo, które ta kamera udostępnia. Nowością w programie Flash Player 11.4 i środowisku AIR 3.4 jest możliwość przekazywania obrazu z kamery do klasy StageVideo.

Wczytywanie wideo zewnętrznego może polegać na stopniowym pobieraniu pliku ze standardowego serwera internetowego lub pracy z wideo strumieniowym przesyłanym z serwera wyspecjalizowanego, takiego jak program Adobe Flash® Media Server.

Ważne pojęcia i terminy

Punkt sygnalizacji
Znacznik, który można umieścić w konkretnym punkcie czasowym pliku wideo, np. w charakterze zakładki lub w celu skojarzenia z tym punktem czasowym pewnych dodatkowych danych.

Kodowanie
Proces przekształcania danych wideo z jednego formatu na inny, na przykład danych wideo ze źródła o wysokiej rozdzielczości na format odpowiedni do przesyłania na żywo przez Internet.

Klatka
Pojedynczy segment informacji wideo; klatkę można wyobrazić sobie jako nieruchomy obraz będący migawką z konkretnego momentu. Szybkie wyświetlanie kolejnych klatek stwarza iluzję ruchu.

Klatka kluczowa
Kompletna klatka wideo, zawierająca wszystkie dane obrazu. Klatki następujące po klatce kluczowej zawierają tylko informacje o różnicach w stosunku do klatki kluczowej, a nie pełne dane klatki.

Metadane
Informacje o pliku wideo osadzone w tym pliku i pobierane razem z nim podczas ładowania.

Pobieranie progresywne
Gdy plik wideo jest pobierany ze standardowego serwera sieci Web, dane wideo ładowane są stopniowo, tak że są częściowo dostępne jeszcze przed zakończeniem ładowania. Takie rozwiązanie umożliwia rozpoczęcie odtwarzania wideo przed pobraniem całego pliku. Z drugiej strony, uniemożliwia skok w przód do części materiału wideo, która nie została jeszcze wczytana.

Przesyłanie strumieniowe
Alternatywą dla pobierania stopniowego jest zastosowanie specjalnego serwera wideo, który będzie przesyłał materiał wideo za pośrednictwem Internetu techniką strumieniową (niekiedy mówi się o tzw. „prawdziwym przesyłaniu strumieniowym”). W przypadku przesyłania strumieniowego komputer widza nigdy nie pobiera całego wideo naraz. W celu przyspieszenia pobierania wykorzystuje się fakt, że w danym momencie komputer potrzebuje tylko niewielkiego fragmentu całego materiału wideo. Ponieważ dostarczaniem materiału wideo steruje specjalny serwer, w dowolnej chwili można uzyskać dostęp do dowolnego miejsca w materiale wideo, bez oczekiwania na pobranie całości materiału od początku do tego miejsca.