Rozdział 14.
Dźwięk i obraz wideo
Spędzając miłe popołudnie na buszowaniu po sieci, odkrywasz nagle stronę zawierającą długą listę animacji, z których chciałbyś skorzystać. Świetnie, myślisz, i przeglądasz listę tytułów. I tu pojawia się problem: przy każdym z tytułów widnieje krótki opis, na przykład, taki:
`Luther's Banana' is a 1.2 megabyte AVI file with a CinePak codec and an
8-bit 22KHz two channel audio track.
Jeżeli rozumiesz ten opis, nie musisz czytać tego rozdziału. Przeczytaj, jeśli chciałbyś się dowiedzieć czegoś o dźwięku i obrazie w powiązaniu z sieciami lub, gdy zdecydowałeś, że musisz poznać znaczenie tych wszystkich dziwnych słów i liczb.
W tym rozdziale będziemy zajmować się cyfrowym dźwiękiem i obrazem wideo: jak działają, w jakich formatach można je przechować i które z nich nadają się do zastosowań sieciowych. Znajdziesz także kilka sugestii, skąd wziąć obraz i dźwięk oraz jak wykorzystać go na Twoich stronach sieciowych. Oto niektóre z tematów, jakie zostaną tu omówione:
cyfrowy dźwięk i obraz; podstawowe wiadomości,
popularne formaty zapisu dźwięku: MP3, Wave oraz RealAudio,
popularne formaty zapisu obrazu wideo: QuickTime, Video for Windows, MPEG oraz RealAudio,
systemy kodowania obrazu wideo; jak działają, które z nich są najpopularniejsze i najbardziej przydatne,
jak tworzyć pliki dźwiękowe i wideo na użytek sieci.
Dźwięk — wiadomości podstawowe
Czy chcesz dowiedzieć się czegoś na temat dźwięku w komputerach? Nauczyć się tworzyć własne pliki dźwiękowe z muzyką, głosem, efektami specjalnymi lub innymi dziwnymi hałasami? Jeśli tak, czytasz właściwy tekst. W pierwszej części tego rozdziału dowiemy się kilku rzeczy o cyfrowym dźwięku w ogóle i o popularnych w sieci formatach plików, w których można go zapisywać. Opowiemy też o tym, jak na własny użytek zapisać dźwięk w formacie cyfrowym i jak wprowadzić go do sieci.
Fale dźwiękowe
Być może pamiętasz z lekcji fizyki, że dźwięk to drgania powietrza, rozchodzące się w postaci fali. Te drgania ludzkie ucho rejestruje jako dźwięk. Najprostsza fala dźwiękowa mogłaby wyglądać tak, jak to pokazuje rysunku. 14.1.
Rysunek 14.1. Prosta fala dźwiękowa |
|
O fali dźwiękowej musimy wiedzieć dwie ważne rzeczy. Po pierwsze, ma zawsze pewną amplitudę, definiowaną jako odległość od linii środkowej (oznaczającej wartość zerową dźwięku, czyli ciszę) do najwyższego lub najniższego punktu fali. Im większa amplituda, tym głośniejszy dźwięk.
Po drugie, ma również częstotliwość, która określa prędkość, z jaką porusza się fala (lub bardziej precyzyjnie — ilość fal przechodzących przez określony punkt w jednostce czasu). Przy wysokich częstotliwościach — tj. gdy fala przemieszcza się prędzej — słyszymy dźwięki wysokie, przy niskich, głębokie tony.
Prawdziwe dźwięki są znacznie bardziej skomplikowane niż ten opisany przez nas. Są one sumą wielu różnych, nakładających się na siebie fal. Amplituda i częstotliwość są jednak wśród tych wszystkich pojęć najważniejsze.
Konwersja fali dźwiękowej do postaci cyfrowej
Analogowa fala dźwiękowa (taka jak na rysunku 14.1) jest ciągłą linią. Poruszając się wzdłuż niej, możemy odczytać nieskończenie wiele wartości amplitudy. Aby przekształcić taką falę do postaci cyfrowej, komputer musi zmierzyć amplitudę w określonych odstępach czasowych. Każda zmierzona wartość amplitudy nazywana jest próbką (sample). Dlatego właśnie proces przekształcania dźwięku do postaci cyfrowej nazywany jest próbkowaniem dźwięku (ang. sampling). Rysunek 14.2 przedstawia, jak odczytywane są wartości amplitudy fali przy próbkowaniu.
Rysunek 14.2. Próbkowanie dźwięku |
|
Im więcej pobierzemy próbek, tym dokładniej uda nam się odwzorować prawdziwy kształt fali i tym doskonalszą jej imitację otrzymamy. Nie będzie to jednak identyczny dźwięk. Ponieważ oryginalna fala posiada nieskończenie wiele różniących się amplitud, nigdy nie uda nam się jej odtworzyć całkowicie wiernie. Jeżeli jednak pobierzemy próbki bardzo gęsto, osiągniemy tak duże podobieństwo do pierwowzoru, że ludzkie ucho nie zdoła wychwycić różnicy.
Ilość próbek pobieranych w ciągu sekundy zwana jest częstotliwością próbkowania (sample rate). Zwykle mierzymy tę częstotliwość w kilohercach (kHz). Obecnie używa się kilku różnych częstotliwości próbkowania; najpopularniejsze z nich to 11 kHz, 22 kHz i 44 kHz.
|
Liczby te są zaokrąglane dla wygody. Rzeczywiście używane częstotliwości wynoszą 11,025 kHz, 22,050 kHz i 44,1 kHz. |
Oprócz częstotliwości próbkowania (sample rate) mamy też rozmiar próbkowania (sample size), zwany też rozdzielczością próbkowania (sample resolution). Ogólnie rzecz biorąc, do wyboru są dwie rozdzielczości: 8-bitowa i 16-bitowa. Rozdzielczość próbkowania należy sobie wyobrażać jako ilość pionowych odcinków, na które dzielimy amplitudę fali przy jej pomiarze, od dolnego do górnego wierzchołka.
Wartości, które chcemy mierzyć, same nie są zależne od przyjętej rozdzielczości, ale dokładność naszego pomiaru — tak. Jeśli do pomiaru, zamiast ośmioodcinkowej „podziałki”, zastosujemy szesnastoodcinkową, będziemy mogli odwzorować mniejsze różnice amplitudy i uzyskamy wierniejszy obraz (patrz rysunek 14.3). To zupełnie tak samo, jak z 16-bitowym i 24-bitowym kolorem. 24-bitowa paleta barw jest bogatsza i pozwala lepiej odwzorowywać subtelne odcienie, ale także, korzystając z palety 16-bitowej, możemy odtworzyć kolory oryginału z niezłym przybliżeniem.
Rysunek 14.3. Rozdzielczość próbkowania |
|
|
|
Częstotliwość próbkowania to liczba „próbek” dźwięku pobieranych na sekundę przy mierzeniu amplitudy fali. Wyrażamy ją w kilohercach (kHz). Rozdzielczość próbkowania jest zwykle 8-bitowa lub 16-bitowa. Ta druga rozdzielczość pozwala dokładniej zapisać wynik pomiaru, dzięki czemu możemy lepiej odwzorować oryginalny dźwięk. |
Przy pobieraniu próbki dźwięku, rzeczywista wielkość zmierzonej amplitudy zaokrąglana jest do najbliższej kreski „podziałki”. W żargonie specjalistów określa się to jako kwantowanie(ang. quantizing). Jeśli korzystamy z 16-bitowej rozdzielczości próbkowania, mamy o wiele większą szansę, że zapisana wartość będzie bliższa zmierzonej wartości oryginalnej niż wtedy, gdy pracujemy z rozdzielczością 8-bitową (patrz rysunek 14.4).
Rysunek 14.4. Pobieranie próbki dźwięku |
|
Różnica pomiędzy oryginalną wartością, a zapisanym, zaokrąglonym wynikiem pomiaru zwana jest błędem kwantowania (ang. quantization error — to jeszcze jeden termin ze specjalistycznego żargonu). Duża ilość błędów kwantowania powoduje powstawanie świszczącego pogłosu w ostatecznie uzyskanym pliku audio.
Wszystko to, co powiedzieliśmy przed chwilą w tak zawiły sposób, sprowadza się do jednego prostego twierdzenia: 16 bitów jest lepsze niż 8 bitów. Po co więc było tyle gadać? No cóż, przynajmniej teraz wiesz dlaczego. Ogólna jakość dźwięku cyfrowego jest powiązana zarówno z częstotliwością próbkowania (sample rate), jak i rozdzielczością próbkowania (sample size). Ponieważ jednak ludzkie ucho łatwiej wychwytuje błędy wynikające ze zbyt niskiej rozdzielczości, niż te, wynikające ze zbyt niskiej częstotliwości, należy przede wszystkim zwrócić uwagę na rozdzielczość. Jeśli to możliwe, zawsze korzystaj z rozdzielczości 16-bitowej, a nie 8-bitowej. Pracując w 8 bitach, używaj największej z dostępnych częstotliwości próbkowania — pozwoli Ci to częściowo zrekompensować błędy.
Musisz także wiedzieć, że na jakość dźwięku ma wpływ również ilość kanałów, jakie zapiszemy. Dźwięk można bowiem zapisywać przy użyciu wielu kanałów, zwykle czyni się tak w celu uzyskania stereofonicznego efektu. Przy jednym kanale mamy do czynienia z dźwiękiem mono, przy dwóch mamy stereo, przy czterech kwadrofonię i tak dalej. Zupełnie tak, jak w Twoim odbiorniku radiowym.
Im wyższa częstotliwość próbkowania, im wyższa rozdzielczość i im większa liczba kanałów, tym lepszej jakości dźwięk otrzymujemy. Przykładowo, dźwięk zapisany przy rozdzielczości 8-bitowej i częstotliwości próbkowania 8 kHz przypomina to, co zwykle słyszymy przez telefon. Natomiast 16-bitowy dźwięk stereofoniczny o częstotliwości 44 kHz odpowiada już standardowi CD. Niestety, zupełnie tak, jak w przypadku obrazów, lepsza jakość oznacza większe rozmiary pliku. Minuta 8-bitowej muzyki o częstotliwości 22 kHz zajmie około 1,25 MB na Twoim dysku, zaś minuta muzyki o jakości typowej dla odtwarzacza CD (16 bitów, 44 kHz) zajmie około 10 MB. Jak łatwo zgadnąć, stereo zajmie dwa razy więcej miejsca niż mono.
A co z kompresją? Jeżeli pliki audio zajmują tyle miejsca, dlaczego nie postąpić tak, jak to uczynili specjaliści od komputerowej grafiki i nie opracować mechanizmów kompresji, które pozwolą zredukować rozmiary plików? Niestety, jak twierdzą eksperci w tej dziedzinie (a nam wypada wierzyć im na słowo), pliki audio są niezmiernie trudne do skompresowania. W gruncie rzeczy nie ma w tym nic dziwnego, jeśli wziąć pod uwagę, jak bardzo złożone są fale dźwiękowe. Nie możemy w tym przypadku liczyć na odszukanie jakichś powtarzających się wzorów i jednolitych obszarów, które tak znakomicie ułatwiają kompresowanie obrazów. Wśród popularnych formatów zapisu dźwięku jest zaledwie kilka takich, które mają wbudowany mechanizm kompresji.
Odtwarzanie dźwięku cyfrowego w postaci analogowej
Udało nam się zakodować analogowy dźwięk w cyfrowej postaci. Teraz chcemy go odtworzyć. Komputer staje przed zadaniem przetworzenia zakodowanych danych — szeregu cyfrowych „próbek” dźwięku z powrotem do postaci analogowej fali.
Cyfrowy dźwięk składa się z milionów zapisanych próbek, z których każda odtwarzana jest przez określony odcinek czasu (ten sam, w jakim przedtem próbka została pobrana). Ponieważ w tym czasie zapisana wartość amplitudy dźwięku pozostaje stała, wytwarzana fala dźwiękowa ma zębaty, poszarpany kształt, a dźwięk brzmi nieco dziwacznie (patrz rysunek 14.5).
Rysunek 14.5. Poszarpany sygnał analogowy |
|
Z tego powodu stosuje się specjalne filtry analogowe, które wygładzają kształt fali dźwiękowej (patrz rysunek 14.6) wysyłanej z głośników Twojego komputera.
Rysunek 14.6. Sygnał po wygładzeniu |
|
Popularne formaty zapisu dźwięku
Teraz, gdy już wiemy, czym jest cyfrowy dźwięk, mówimy sposoby jego przechowywania. Niestety, do tej pory nie ma takiego formatu plików audio, który stałby się standardem w sieci, tak jak to się stało z formatami GIF oraz JPEG w przypadku obrazów. W użyciu jest wiele formatów, każdy z nich stosowany w innych przypadkach. W tym rozdziale opiszemy pobieżnie najpopularniejsze formaty i zakres ich zastosowań.
Format *-law (Mu-law), AU
Najbardziej rozpowszechnionym i najdostępniejszym z formatów zapisu dźwięku jest format *-law, wymawiany jak „mju-lo:” (a czasem „ju-lo:”, gdyż grecka litera * przypomina wyglądem literę „u”). Jest to format uniwersalny, dostępny na różnych platformach sprzętowych. Wykorzystywany jako standard zapisu dźwięku w systemach Sun oraz NeXT, format *-law został zaprojektowany w Stanach Zjednoczonych na użytek telekomunikacji. Jego europejskim odpowiednikiem jest A-law, który zwykle niczym się od niego nie różni. Także sam format *-law ma kilka odmian, z których wszystkie występują pod tą samą nazwą. Wszystkie mogą być jednak bez problemu odczytywane i odtwarzane na każdym sprzęcie, który przyjmuje format *-law. Pliki w formacie *-law zwane są czasem plikami AU, gdyż ich rozszerzenie to właśnie .au.
Dźwięk zapisany w formacie *-law jest monofoniczny, 8-bitowy, o częstotliwości 8KHz. Sposób kodowania dźwięku różni się od stosowanego w większości innych formatów o podobnych możliwościach. Dzięki temu format *-law ma lepszą dynamikę (zróżnicowanie pomiędzy cichymi i głośnymi dźwiękami) niż inne formaty o równie niskiej rozdzielczości i częstotliwości próbkowania. Za to wykazuje większą tendencję do występowania syczącego pogłosu.
|
Niektóre programy pozwalają zapisać dźwięk w formacie *-law z częstotliwością próbkowania wyższą niż 8 kHz. Jednak tak zapisany plik może nie dać się odtworzyć na innych platformach sprzętowych. Jeżeli zamierzasz korzystać z formatu *-law, pozostań lepiej przy typowej częstotliwości 8 kHz. |
Jedyną zaletą formatu *-law jest jego szeroka kompatybilność sprzętowa. Pod wieloma adresami sieciowymi, pod którymi rozpowszechniane są pliki audio wysokiej jakości, zapisane w formatach, takich jak AIFF lub MPEG, znaleźć też można kopie tych plików zapisane w formacie *-law. Pozwala to poszerzyć krąg odbiorców.
Format AIFF/AIFC
AIFF (ang. Audio Interchange File Format) został opracowany przez firmę Apple. Pierwotnie przeznaczono go dla systemu Macintosh. Później zaadoptował go także system SGI. Jeśli chodzi o elastyczność użytkowania, AIFF jest doskonałym formatem. Pozwala zapisywać dźwięk mono lub stereo, z rozdzielczością 8- lub 16-bitową przy wielu różnych częstotliwościach próbkowania. Pliki w formacie AIFF mają rozszerzenie .aiff lub .aif.
Format AIFC to odmiana formatu AIFF z wbudowaną kompresją. Podstawowym algorytmem kompresji jest MACE (ang. Macintosh Audio Compression/Expansion) występujący w dwóch odmianach: MACE3 (kompresja 3:1) oraz MACE6 (kompresja 6:1). Kompresja MACE w obu swych wersjach jest kompresją stratną. Nie można więc oczekiwać, że dźwięk zapisany w formacie AIFC będzie miał jakość równie wysoką, jak zapisany w formacie AIFF. Nie powinno być natomiast żadnych problemów z odtwarzaniem. Odtwarzacze, które potrafią odczytać plik AIFF, potrafią też z reguły odczytać plik AIFC. Przy wyborze formatu AIFF lub AIFC powinniśmy się więc kierować wymaganiami co do jakości dźwięku z jednej strony, a wielkości pliku z drugiej.
Format SND systemu Macintosh
Format SND, czasem zwany po prostu „dźwiękiem systemowym Mac-a” — Macintosh System Sounds — wykorzystywany jest tylko w systemie Macintosh do zapisu rozmaitych prostych dźwięków, pisków i dzwonków, jakie towarzyszą pracy na komputerze. Pliki SND mogą zawierać cyfrowe próbki lub serię poleceń i być odtwarzane przez Macintosh Sound Manager. Pliki SND nie są zbytnio rozpowszechnione w sieci ze względu na kompatybilność wyłącznie z systemem Macintosh. Są za to łatwo dostępne, a ich konwersja do innego formatu dźwiękowego nie przysparza żadnych trudności.
Format WAVE systemu Windows
Format WAVE lub RIFF WAVE, zwany też WAV z powodu charakterystycznego dla niego rozszerzenia (.wav), został opracowany przez Microsoft dla systemu IBM. Z chwilą wprowadzenia tego formatu w wersji 3.1 systemu Windows, stał się on standardem dla komputerów IBM. Formaty WAVE oraz AIFF mają ze sobą wiele wspólnego, zwłaszcza pod względem elastyczności użytkowania. Również w plikach WAVE możemy zapisywać dźwięk z rozmaitą rozdzielczością, częstotliwością próbkowania i liczbą kanałów. Dodatkowo pliki WAVE mogą wykorzystywać kilka algorytmów kompresji. WAVE jest domyślnym formatem zapisu plików dźwiękowych w systemach Windows i z tego względu stał się najpopularniejszym formatem ogólnego przeznaczenia.
Format MPEG Audio
MPEG (ang. Moving Picture Experts Group) jest organizacją zajmująca się przede wszystkim standaryzacją metod kompresji cyfrowego obrazu wideo. Ponieważ jednak na taśmach wideo obrazowi towarzyszy zwykle dźwięk, również kompresja dźwięku znalazła się w kręgu zainteresowań tej grupy. Algorytm kompresji dźwięku formatu MPEG jest zdecydowanie zbyt skomplikowany, by go tu omawiać, innymi słowy, sama go nie rozumiem. Jeśli jednak będziesz zainteresowany tym tematem, to szczegółowe informacje znajdziesz w pliku MPEG FAQ na większości sieciowych stron, zajmujących się rozprowadzaniem plików FAQ w Usenecie. Adres jednej z tych stron podałam na końcu tego rozdziału.
Pliki dźwiękowe w formacie MPEG niezwykle szybko zdobyły popularność w sieci. Format MP3 oferuje doskonałe możliwości kompresji oraz wysoką jakość dźwięku, dzięki czemu wielu muzyków zdecydowało się rozprowadzać swoje utwory w tej postaci. Dostępnych jest także wiele programów odczytujących ścieżki dźwiękowe z płyt kompaktowych i zapisujących je w formacie MP3, co pozwala na zapisanie utworów muzycznych na dysku i późniejsze ich odtwarzanie. Dystrybucja tych plików bez zgody wydawcy płyty kompaktowej jest nielegalna, jednak wiele osób tworzy kopie piosenek na swój prywatny użytek. Doskonałą witryną poświęconą MP3 jest MP3.com http:// www.mp3.com/.
Format RealAudio
Pliki w formacie RealAudio wymagają odtwarzacza RealAudio lub odpowiedniego dodatku i są rozpowszechniane za pomocą serwera RealAudio. Obecnie występują w dwóch odmianach. Format 14.4 nadaje się do odtwarzania przy użyciu modemu 14,4 kb i szybszego, otrzymujemy monofoniczny dźwięk o jakości AM. Format 28.8 nadaje się do odtwarzania przy użyciu modemu 28,8 kb i szybszego, otrzymujemy monofoniczny dźwięk o jakości „prawie-FM”. Format RealAudio był początkowo tworzony jako format strumieniowany. W odróżnieniu od plików WAVE, które przed odtworzeniem trzeba pobrać w całości, pliki (lub raczej strumienie audio) RealAudio wymagają tylko pobrania i przechowania w buforze kilku sekund utworu lub transmisji, która następnie może być odtwarzana w czasie rzeczywistym. Dzięki temu ich wykorzystanie w Internecie jest znacznie bardziej praktyczne. Korzystając z plików RealAudio, użytkownicy mogą słuchać ich już w trakcie pobierania, nie muszą czekać, aż plik zostanie pobrany w całości.
Oba formaty, 14.4 oraz 28.8, wyposażone są w wysoce skuteczny algorytm stratnej kompresji, zaprojektowany specjalnie dla nich. Pliki z dźwiękiem, zapisane w formacie RealAudio, są zwykle o wiele mniejsze, niż analogiczne pliki zapisane w formacie AIFF lub WAVE, ale też jakość dźwięku bywa zwykle niższa. Więcej informacji na temat formatu RealAudio możesz znaleźć na witrynie http://www.real.com/; z witryny tej będziesz także mógł skopiować odtwarzacz RealAudio Player oraz Serwer.
Windows Media
Firma Microsoft stworzyła format plików audio i wideo określany jako Advanced Streaming Format, którego można użyć do tworzenia plików audio strumieniowo przekazywanych przez Internet. Pliki te są bardzo elastyczne, można je kompresować do niewielkich rozmiarów i przesyłać łączami o niewielkiej przepustowości lub też zastosować kompresję o mniejszym stopniu, aby zapewnić lepszą jakość odtwarzania. Pliki dźwiękowe Windows Media zostały zaprojektowane w celu zastąpienia strumieniowanych plików audio w formacie RealAudio G2 oraz plików MP3. Więcej informacji na temat technologii Windows Media można znaleźć pod adresem
http://www.microsoft.com/windows/windowsmedia/pl/default.asp .
Skąd brać pliki dźwiękowe?
Skąd brać pliki dźwiękowe do wykorzystania na stronach sieciowych? Jest wiele różnych źródeł:
mając do dyspozycji odpowiedni komputer z napędem CD, możemy nagrywać cyfrowy dźwięk wprost ze zwykłej płyty kompaktowej. Oczywiście, musimy mieć do dyspozycji taki napęd CD-ROM, który to umożliwia. Jeśli tak właśnie planujesz zrobić, nie zapomnij o kwestii praw autorskich. Większość nagrań wydanych na płytach jest zastrzeżona, a właściciele praw autorskich mogą nie być zachwyceni, gdy fragmenty ich utworów zaczną być bezpłatnie rozpowszechniane w Internecie;
wiele sieciowych archiwów przechowuje zestawy krótkich dźwiękowych plików, zapisanych w formacie odpowiednim dla tego systemu, w którym się specjalizują (format SND dla systemu Macintosh, WAV dla Windows, AU dla Uniksa w wersji Sun itd.).
|
Należy pamiętać, że dźwięki ściągnięte z sieci, podobnie jak obrazy mogą być własnością kogoś, kto nie zamierza ich nam udostępniać. Bądź ostrożny, jeśli chodzi o wykorzystanie „znalezionych” plików dźwiękowych. |
Na rynku dostępne są komercyjne „klipy dźwiękowe” w różnych formatach, przeznaczone dla różnych systemów. Ich zaletą jest to, że zwykle są własnością publiczną (public domain) lub też można je wykorzystywać bezpłatnie (royalty free). Możesz je więc dołączyć do strony sieciowej bez uiszczania opłaty i załatwiania specjalnych zezwoleń.
Próbkowanie dźwięku
Najciekawszym dźwiękiem na stronie sieciowej będzie ten, który sam sobie nagrasz. Jak już mówiliśmy wcześniej, proces tworzenia cyfrowego dźwięku zwany jest próbkowaniem (sampling). W tym rozdziale opowiemy trochę o potrzebnym do tego sprzęcie i o dostępnym oprogramowaniu, jakiego możemy używać do próbkowania i zapisywania dźwięku.
Jak można się spodziewać, dla otrzymania wysokiej jakości plików dźwiękowych (w celu umieszczenia ich w sieci) niezbędne jest zakupienie drogiego sprzętu. Wybór jest bardzo szeroki. Jednak, w miarę upływu czasu, te drogie technologie stają się coraz bardziej rozpowszechnione i przystępne cenowo. Najlepsze, co w tej sytuacji możemy zrobić, to opisać pewne ogólne tendencje w tej branży. Po szczegółowe informacje zwróć się do lokalnego dystrybutora takiego sprzętu lub poszukaj ich w czasopismach o tematyce komputerowej.
Próbkowanie na PC
Do próbkowania dźwięku na PC potrzebujemy karty dźwiękowej. Większość takich kart pozwala zapisywać i odtwarzać dźwięk w zakresie od 8-bitowego dźwięku monofonicznego o częstotliwości 11 kHz lub 22 kHz, aż do 16-bitowego dźwięku stereo o częstotliwości 44 kHz. Postaraj się o kartę 16-bitową. Pozwoli Ci to uzyskać lepszą jakość dźwięku, który zapisujesz w postaci cyfrowej, ale są też i inne powody. Większość nowych gier i programów multimedialnych przystosowana jest do wykorzystywania dźwięku 16-bitowego, jeśli zapewnimy im odpowiednią kartę, wrażenie będzie o wiele lepsze. Można podłączyć magnetofon lub mikrofon do właściwego gniazda na tej karcie (line-in jack) albo posłużyć się standardowym mikrofonem. Teraz pojawia się kwestia oprogramowania.
System Windows zaopatrzony jest w prosty program do nagrywania, zwany Rejestratorem Dźwięku (Sound Recorder — jaka trafna nazwa!). Zdolny jest on nagrywać 8-bitowy dźwięk monofoniczny z częstotliwością 22 kHz. Dla bardzo prostych dźwięków, głosów i drobnych efektów dźwiękowych, ten program (pokazany na rysunku 14.7) może być zupełnie wystarczający.
Rysunek 14.7. Program Rejestrator Dźwięku systemu Windows |
|
Również do karty dźwiękowej, którą nabyłeś, powinny być dołączone programy umożliwiające nagrywanie i edycję dźwięku. Standardowa karta Sound Blaster sprzedawana jest z kilkoma aplikacjami tego typu, między innymi z programem WaveEditor pokazanym na rysunku 14.8. Program ten pozwala nagrywać i edytować dźwięk o szerokiej gamie parametrów.
Rysunek 14.8. Program WaveEditor dołączony do karty Sound Blaster |
|
Jeśli zamierzasz serio zająć się obróbką dźwięku, może ci się przydać CoolEdit. CoolEdit to edytor dźwięku (typu shareware) o olbrzymiej ilości opcji. Pozwala nagrywać na większości kart dźwiękowych. Potrafi odczytywać i zapisywać dźwięk w różnych formatach, można go więc używać do konwersji. Można nawet za jego pośrednictwem obsługiwać odtwarzacz CD. Zarejestrowanie pełnej wersji programu CoolEdit kosztuje 50 dolarów. Istnieje także możliwość zarejestrowania wersji Light, jej koszt wynosi 25 dolarów, a program posiada większość możliwości funkcjonalnych pełnej wersji. Więcej informacji na temat tego programu można znaleźć na WWW, pod adresem
http://www.syntrillium.com/.
RealProducer jest narzędziem wybieranym przez wszystkie osoby, które chcą tworzyć pliki w formacie RealAudio. Program pozwala rejestrować dźwięk i zapisywać go w postaci plików RealAudio oraz konwertować pliki, zapisane w innych formatach, do formatu RealAudio. Więcej informacji na temat tego narzędzia można znaleźć na WWW pod adresem http://www.real.com/products/tools/index.html.
Jeśli planujesz pracować intensywnie z plikami audio i wideo, być może zainteresuje Cię program Adobe Premiere, od dawna ceniony przez użytkowników komputerów Macintosh. Ma on wielkie możliwości w zakresie nagrywania dźwięku, obrazu oraz integracji obu. Może współpracować z większością kart dźwiękowych. Program ten jest dostępny zarówno w wersji przeznaczonej dla systemów Windows, jak i komputerów Macintosh. Jest droższy, ale jest to jedno z najlepszych dostępnych narzędzi.
Próbkowanie na Macintoshach
Komputery Macintosh mają dźwięk zabudowany od wielu lat, a większość z nich wyposażona jest we wbudowany lub też w oddzielny mikrofon, dołączany za pośrednictwem kabla. Możemy nagrywać wprost przez mikrofon (otrzymujemy wtedy 8-bitowy dźwięk o częstotliwości 22 kHz) lub podłączyć standardową wtyczkę audio stereo do gniazda stereo z tyłu komputera. Większość nowszych Mac-ów potrafi nagrywać 16 bitowy dźwięk o częstotliwości do 48 kHz. Częstotliwość 44 kHz odpowiada dźwiękowi o jakości CD, a 48 kHz jakości magnetofonu cyfrowego DAT (Digital Audio Tape). Sprawdź w dokumentacji Twojego komputera, jakie ma możliwości.
Aby nagrać zwykły 8-bitowy dźwięk monofoniczny o częstotliwości 22 kHz, gdy planowana długość nagrania nie przekracza 10 sekund, możemy skorzystać z panelu sterującego Sound. Jest on standardową częścią systemu operacyjnego Maca. Wystarczy wybrać Add i kliknąć przycisk Record (patrz rysunek 14.9).
Rysunek 14.9. Nagrywanie za pośrednictwem panelu sterującego dźwiękiem |
|
Aby dokładniej kontrolować przebieg nagrywania, będziemy potrzebować dodatkowego oprogramowania. Jest mnóstwo narzędzi działających w systemie Mac, od doskonałego bezpłatnego programu SoundMachine (do nagrywania i konwersji dźwięku) i sharewareowego SoundHack (do edycji), aż po komercyjne aplikacje w rodzaju Macromedia's SoundEdit 16. Świetnym narzędziem jest też program Adobe Premiere, o którym mówiliśmy już wcześniej, w podrozdziale poświęconym komputerom PC. Szczególnie przydatny będzie wtedy, gdy pracę nad dźwiękiem zamierzamy łączyć z pracą nad obrazem wideo (patrz rysunek 14.10).
Rysunek 14.10. Opcje nagrywania programu Adobe Premiere |
|
Próbkowanie w systemach uniksowych
Większość nowszych stacji uniksowych posiada wbudowane mikrofony, które pozwalają nagrywać dźwięk 16-bitowy. Szczegóły znajdziesz w dokumentacji technicznej.
Konwersja plików dźwiękowych
Plik dźwiękowy może być zapisany w niewłaściwym formacie, to znaczy nie w tym, w którym chcielibyśmy go zapisać. W tym podrozdziale wymienimy kilka programów, które potrafią odczytywać i konwertować pliki dźwiękowe do wielu popularnych formatów.
Dla systemów Unix oraz zgodnych ze standardem PC można stosować program o nazwie SOX autorstwa Lance-a Norskoga. Potrafi on konwertować pliki do wielu formatów, w tym AU, WAV, AIFF oraz macintoshowego SND. Można też w nim dokonywać elementarnej obróbki dźwięku, czyli filtrowania, zmiany częstotliwości i odwracania kierunku czasu w pliku dźwiękowym.
W systemie DOS można używać programu WAVany Billa Neisiusa. Pozwala on konwertować większość popularnych formatów (w tym AU oraz SND systemu Macintosh) do formatu WAV.
Dla Windows mamy doskonały program Waveform Hold and Modify (WHAM), który pozwala odtwarzać, edytować i konwertować pliki dźwiękowe. Świetnie może posłużyć jako pomocnicza aplikacja dla sieciowej przeglądarki.
W systemie Macintosh można korzystać z bezpłatnego (freeware) programu SoundApp Normana Franke-a, który odczytuje i odtwarza większość plików dźwiękowych i konwertuje je do formatu WAV, Macintosh SND, AIFF oraz NeXT (lecz, co ciekawe, nie do formatu AU systemu Unix Sun). Również bezpłatny program Ulaw (wymawiać z „u”) potrafi konwertować dźwięk z formatu SND systemu Macintosh do formatu AU.
Ewentualne źródła dodatkowych informacji na temat tych programów wymieniono w dodatku A.
Aby przekonwertować dowolny plik dźwiękowy do formatu RealAudio, musimy mieć program RealAudio Encoder. Można go otrzymać bezpłatnie wraz z zestawem RealAudio Server lub też można ściągnąć go za pośrednictwem sieci ze strony Real Audio
http://www.real.com/.
Dźwięk w sieci
Teraz, gdy zaprezentowaliśmy rozmaite opcje nagrywania i opracowywania plików audio, pora na kilka ostrzeżeń odnośnie wykorzystania takich plików w sieci.
Wszystkie zagadnienia dotyczące prędkości przekazywania informacji oraz umieszczania obrazów na stronach WWW, można także odnieść do plików dźwiękowych, im więcej umieścisz ich na stronie, tym dłużej użytkownik będzie musiał czekać na jej pobranie i wyświetlenie. Poniżej podałam kilka pomocnych informacji, które mogą Ci się przydać przy wykorzystywaniu plików dźwiękowych na stronach WWW:
większość komputerów podłączonych do sieci zdolnych jest do odtwarzania dźwięku 16-bitowego, zaś przy odtwarzaniu takiego dźwięku na komputerze o 8 bitowej karcie dźwiękowej mogą pojawić się dziwaczne efekty uboczne. Aby zapewnić jak najlepszą jakość dźwięku jak najszerszej publiczności, umieszczaj na Twoich stronach sieciowych wyłącznie pliki 8-bitowe lub równolegle dwie wersje plików: 8-bitową i 16-bitową;
aby umieszczony na sieciowej stronie dźwięk był jak najlepszej jakości, nagrywaj go zawsze z najwyższą częstotliwością i rozdzielczością próbkowania, jaką możesz osiągnąć. Następnie użyj edytora dźwięku w celu przekonwertowania nagrania do 8 bitów. Jest wiele programów do konwersji i obróbki dźwięku, których można do tego użyć. Szczególnie powinieneś zainteresować się pakietem SOX dla Uniksa i systemu DOS. Znajdziesz tam kilka filtrów, które mogą Ci pomóc poprawić jakość 8-bitowego dźwięku;
staraj się ograniczać wielkość plików, zapisując dźwięk z rozdzielczością 8-bitową, obniżając częstotliwość próbkowania i rezygnując z dźwięku stereofonicznego na rzecz monofonicznego;
na stronie sieciowej powinniśmy zawsze umieszczać informację na temat formatu pliku audio: czy jest to WAVE, AIFF, czy też inny format. Nie zapomnij, że nie ma jeszcze ustalonego standardu dla zapisu dźwięku w sieci. Czytelnicy Twojej strony mogą się słusznie zirytować, jeśli poświęcą mnóstwo czasu na ściągnięcie pliku dźwiękowego, a potem okaże się, że nie mogą go odtworzyć za pomocą posiadanego oprogramowania. Miłym gestem w stronę czytelników jest też zamieszczenie informacji o rozmiarach pliku; dzięki temu będą oni mogli przewidzieć, jak długo potrwa oczekiwanie;
jeśli bardzo zależy Ci na jakości, w związku z czym musisz umieszczać na swojej stronie duże pliki audio, zastanów się nad zlokalizowaniem na tej samej stronie pomniejszonych wersji Twoich plików w formacie *-law. Będzie to swego rodzaju podgląd zawartości właściwego pliku na użytek tych odbiorców, którzy nie są w stanie odtwarzać wyższej jakości dźwięku na swoim sprzęcie;
zajmujesz się tworzeniem dźwięku w formacie RealAudio? Większość tych porad stosuje się także do Ciebie. Jeśli jednak chcesz się dowiedzieć, jakich wskazówek może Ci udzielić firma RealAudio odnośnie uzyskania jak najwyższej jakości dźwięku, odwiedź ich stronę
http://www.realaudio.com/help/content/ audiohints.html.
Cyfrowy obraz wideo
Digitalizacja obrazu wideo jest bardzo ciekawym kierunkiem rozwoju branży komputerowej, interesującym zarówno producentów sprzętu komputerowego, jak i programistów (zwłaszcza tych zajmujących się grami i programami multimedialnymi), a także wszystkich tych, którzy po prostu lubią nowości. W sieci cyfrowy obraz wideo spotykamy zwykle w postaci małych filmowych „klipów”. Najczęściej znajdujemy je w multimedialnych archiwach.
Nie jestem w stanie dokonać w tej książce pełnego przeglądu technologii, wykorzystywanych do przetwarzania obrazu wideo. Po części dlatego, że są one dość skomplikowane, ale przede wszystkim dlatego, że postęp w tej dziedzinie jest nieomal równie szybki, jak ten, któremu podlega sama sieć. Mogę jednak podać tu kilka wskazówek dotyczących tworzenia i umieszczania w sieci krótkich filmików.
Analogowy i cyfrowy obraz wideo
Analogowe wideo, podobnie jak analogowe audio, to płynny strumień informacji, w tym przypadku dźwięków i obrazów. Aby pobrać je do komputera, potrzebujemy karty wideo. Dokonuje ona próbkowania dostarczonego materiału filmowego w regularnych okresach czasu, zupełnie tak samo, jak karta dźwiękowa czyni to z nagranym dźwiękiem. Przy każdym pobraniu próbki pojedynczy obraz kodowany jest z określoną rozdzielczością — tak powstaje ujęcie (frame). Gdy odtwarzamy potem cyfrowy film, ujęcia wyświetlane są kolejno, dając złudzenie ruchu. Liczba ujęć wyświetlanych na sekundę (frames per second, czyli f/s) określa prędkość odtwarzania (frame rate). Jest to pojęcie analogiczne do częstości próbkowania (sampling rate) przy digitalizacji dźwięku. Im wyższa jest prędkość odtwarzania, innymi słowy, im więcej ujęć przypada na sekundę filmu, tym wierniej odwzorowany zostaje analogowy oryginał.
Oprócz prędkości odtwarzania, duże znaczenie ma także wielkość ujęcia, czyli jego rzeczywiste wymiary, wyrażone w pikselach (patrz rysunek 14.11).
Rysunek 14.11. Prędkość odtwarzania i wielkość ujęcia |
|
|
|
Ujęcie to pojedynczy obraz z sekwencji, która razem składa się na cyfrowy film zapisany w pliku wideo. Prędkość odtwarzania (frame rate) to liczba ujęć wyświetlanych w ciągu sekundy, zaś wielkość ujęcia (frame size) to rozmiary pojedynczego ujęcia wyrażone w pikselach. |
Prędkość odtwarzania standardowego, pełnoekranowego pliku wideo, jaki możesz uzyskać na Twoim odtwarzaczu wideo, wynosi 30 ujęć na sekundę (f/s). Tę prędkość odtwarzania określa się czasem jako „pełną” — full-motion video. Pełna prędkość odtwarzania, przy pełnoekranowym obrazie, to niedościgniony wzorzec dla informatyków i wszelkich specjalistów od cyfrowego obrazu. Na ogół muszą się oni zadowalać o wiele mniejszą prędkością odtwarzania i rozdzielczością, jeśli chcą zachować płynność akcji.
Dlaczego tak się dzieje? Dla analogowego obrazu wideo 30 ujęć na sekundę to żaden problem. Po jednym ujęciu wyświetlane jest kolejne, gładko i sprawnie. Natomiast przy obrazie cyfrowym każde kolejne ujęcie musi zostać odczytane z dysku, w razie potrzeby zdekompresowane i możliwie jak najszybciej przerzucone na ekran. Aby proces ten przebiegał poprawnie, potrzebujemy niebagatelnej mocy obliczeniowej, szybkiego twardego dysku i jeszcze szybszej karty graficznej. Wymagania te są tym większe, im większą zastosujemy rozdzielczość obrazu i prędkość odtwarzania.
Co się dzieje, gdy prędkość odtwarzania filmu zaczyna przekraczać możliwości naszego komputera? W takiej sytuacji komputer zaczyna opuszczać niektóre ujęcia, po prostu pomija je przy wyświetlaniu. W ciągu sekundy pokazywanych jest mniej obrazów, niż zaplanowano. Efekt jest taki, jakby zmniejszono prędkość odtwarzania. Ruch traci płynność, akcja rwie się i chwilami ustaje. To się naprawdę czasami zdarza.
Wkrótce odkryjesz, że znaczna część tej pracy polega na znajdowaniu kompromisów pomiędzy wymaganiami co do jakości a możliwościami sprzętu, na jakim pracujesz. Więcej na temat tych kompromisów powiem w dalszej części rozdziału.
Kompresja i dekompresja obrazu wideo (Codec)
Jak już wcześniej mówiłam, pliki z obrazami oraz pliki dźwiękowe zajmują bardzo wiele miejsca na dysku. Teraz wyobraź sobie połączenie obu tych rzeczy: setki, a nawet tysiące obrazów plus ścieżka dźwiękowa. To pozwoli Ci wyobrazić sobie, jakie rozmiary może osiągnąć plik wideo. Im większy plik, tym trudniej będzie komputerowi poradzić sobie z nim przy zachowaniu rozsądnego tempa obliczeń i tym bardziej prawdopodobne się staje, że ucierpi płynność odtwarzania. Dlatego właśnie kwestia kompresji i dekompresji nabiera szczególnego znaczenia przy plikach wideo. Wiele na tym polu zostało już zrobione.
Algorytm stosowany do kompresji i dekompresji cyfrowego obrazu wideo określany jest zwykle jednym terminem: codec (ang. COmpression/DECompresion). Inaczej niż w przypadku algorytmów kompresji stosowanych dla pojedynczych obrazów, algorytmy kompresji wideo nie są ściśle powiązane z formatem pliku, w którym zapisujemy obraz wideo. Na ogół, w ramach danego formatu, możemy stosować wiele różnych algorytmów kompresji i dekompresji. Przy odtwarzaniu pliku, format sam rozpoznaje, jaki rodzaj kompresji należy zastosować. Więcej informacji na temat algorytmów codec znajdziesz w dalszej części tego rozdziału, w podrozdziale poświęconym kompresji filmów.
Formaty plików
Mamy cyfrowy obraz, zapisany w pliku i gotowy do odtworzenia. Taki cyfrowy „film” może być oparty na obrazie wideo zarejestrowanym kamerą albo może być komputerowo wygenerowaną animacją. W obu przypadkach stajemy przed problemem wyboru odpowiedniego formatu.
W obecnej chwili mamy pięć liczących się formatów w tej branży, a także w sieci. Są to: QuickTime, Video for Windows (VfW), MPEG, RealVideo oraz Windows Media.
Format QuickTime
Jakkolwiek format QuickTime został utworzony przez firmę Apple na użytek komputerów Macintosh, to ze wszystkich plików wideo spotykanych w sieci, te w formacie QuickTime najlepiej spełniają funkcję łącznika pomiędzy różnymi systemami i platformami sprzętowymi (drugie miejsce w tym rankingu zajmuje format MPEG). Oprogramo-wanie firmy Apple obejmuje format QuickTime oraz prosty odtwarzacz, zwany MoviePlayer lub SimplePlayer. Pliki QuickTime mogą być odtwarzane za pośrednictwem pakietu QuickTime for Windows (QTfW) lub bezpłatnego programu Xanim, który pozwala odtwarzać je w systemie Unix oraz X Window. Pliki w formacie QuickTime mają rozszerzenie .qt lub .mov.
Format QuickTime pozwala wykorzystywać wiele różnych algorytmów kompresji, a w szczególności CinePak, Indeo oraz Sorenson. Wszystkie te algorytmy mają uniwersalny charakter i można je wykorzystywać w różnych systemach. Przeczytaj też podrozdział — „Algorytmy kompresji” w dalszej części tego rozdziału.
|
Jeśli tworzysz pliki wideo na komputerze Macintosh i zapisujesz je w formacie QuickTime, musisz zawsze sprawdzić, czy wszystkie warstwy obrazu zostały połączone w jedną („spłaszczone”). Inaczej plik nie będzie mógł zostać odczytany w innym systemie. Przejrzyj też podrozdział — „Otrzymywanie i konwersja obrazu wideo” w dalszej części tego rozdziału. |
Format Video for Windows (AVI)
Format Video for Windows (VfW) został opracowany przez Microsoft i stanowi standard w edycji wideo na PC. Pliki VfW zwane są też często plikami AVI, z powodu swego rozszerzenia: .avi (ang. Audio/Video Interleave). Format VfW stał się bardzo popularny wśród użytkowników PC, istnieje też mnóstwo animacji zapisanych w tym właśnie formacie. Jednak poza granicami świata PC trudno znaleźć odtwarzacz, który by ten format przyjmował. Dlatego właśnie pliki VfW są mniej odpowiednie do sieci niż pliki QuickTime.
Format MPEG Video
MPEG jest zarówno formatem pliku, jak i algorytmem kompresji. Format MPEG występuje w trzech odmianach. Mamy MPEG wideo, który pozwala zapisywać tylko obrazy, MPEG audio, omówiony we wcześniejszej części tego rozdziału oraz system MPEG, który pozwala łączyć obraz ze ścieżką dźwiękową.
Pliki MPEG zapewniają doskonałą jakość obrazu, lecz proces ich dekompresji jest dość powolny. Z tego powodu wiele dekoderów plików MPEG jest wspomaganych sprzętowo. Kiedyś oznaczało to, że była Ci potrzebna dodatkowa karta, aby odtwarzać pliki MPEG prawidłowo, bez opuszczania wielu ujęć. Aktualnie moc obliczeniowa procesorów, w jakie są wyposażane nowe komputery PC, umożliwia dekodowanie obrazu zapisanego w formacie MPEG bez konieczności zastosowania specjalnych urządzeń sprzętowych. W rzeczywistości, filmy DVD są kodowane przy wykorzystaniu formatu MPEG i można je odtwarzać na komputerach osobistych bez żadnych dodatkowych urządzeń sprzętowych.
Następna wada tego formatu, jeśli chodzi o jego praktyczne wykorzystanie w sieci, to duże koszty kodowania obrazu w pliku MPEG. Potrzebny jest sprzętowy kompresor. Ceny urządzeń tego rodzaju wyrażane są w tysiącach dolarów. W miarę, jak format MPEG zyskuje na popularności, ceny te będą prawdopodobnie spadać. Na razie jednak lepszym pomysłem wydaje się wybranie takiego formatu dla plików wideo, który nie wymaga sprzętowych inwestycji. Chyba, że masz dostęp do potrzebnego sprzętu lub też gotów jesteś do wszelkich poświęceń, jeśli chodzi o Twoją pracę.
|
Zamiast samemu kupować urządzenie kodujące, możesz zlecić wykonanie kodowania agencji, zajmującej się produkcją wideo. Niektóre z tych firm wyposażone są w odpowiednie kompresory i mogą zapisać Twoją pracę w formacie MPEG, zazwyczaj licząc sobie określoną stawkę od minuty filmu. Ceny takich usług stale spadają, podobnie jak spada cena potrzebnego do tego sprzętu. Korzystanie z usług agencji może okazać się dla Ciebie optymalnym rozwiązaniem, jeśli z jakichś przyczyn bardzo zależy Ci na formacie MPEG. |
RealVideo
RealVideo stara się wywrzeć taki sam wpływ na rynek internetowego obrazu, jaki na rynek internetowego audio wywarło RealAudio. Firma RealNetworks zintegrowała klienta RealVideo z programem RealPlayer, dzięki czemu jego użytkownicy mogą oglądać strumieniowany obraz przekazywany Internetem, podobnie jak wcześniej mogli słuchać strumieniowanego dźwięku. RealVideo wykorzystuje niezwykle efektywną metodą kompresji oraz niewielkie ramki, dzięki czemu strumieniowany obraz mogą oglądać nawet osoby korzystające z łączy o niewielkiej przepustowości. Niestety, transmisja obrazu wymaga łączy o większej przepustowości niż transmisja dźwięku, co sprawia, że oglądanie obrazu przy wykorzystaniu zwykłego połączenia modemowego jest praktycznie niemożliwe. Niemniej jednak, przypuszcza się, że transmisja obrazu Internetem stanie się bardziej użyteczna i popularna, gdy tylko połączenia o większej przepustowości zaczną być częściej stosowane w domach. Więcej informacji na temat RealVideo można znaleźć na witrynie firmy RealNetworks pod adresem
http://www.real.com.
Windows Media
Opracowany przez firmę Microsoft format Windows Media Advanced Streaming Format umożliwia obsługę zarówno plików audio, jak i audio-wideo. W efekcie, program Media Player pozwala użytkownikom nie tylko słuchać strumieniowanego dźwięku przekazywanego przez Internet, lecz także oglądać strumieniowany obraz. Format ASF boryka się z tymi samymi problemami, co RealVideo, większość użytkowników nie dysponuje łączem o wystarczającej przepustowości, aby korzystać z obrazu przekazywanego Internetem. Format przekazywania obrazu opracowany przez firmę Microsoft daje większe możliwości wykorzystania połączeń o dużej przepustowości niż format RealVideo; niemniej jednak dla przeważającej większości odbiorców różnica ta nie ma większego znaczenia. Więcej informacji na ten temat możesz znaleźć na WWW pod adresem:
http://www.microsoft.com/windows/windowsmedia/pl/default.asp.
Kompresja obrazu wideo
Tak jak i w przypadku pojedynczych obrazów oraz dźwięku, dla cyfrowego obrazu wideo kompresja jest bardzo ważna. Nawet szczególnie ważna, gdyż odtworzenie choćby krótkiego filmu wymaga przechowania i odczytania olbrzymiej ilości danych. Na szczęście dla cyfrowego obrazu wideo opracowano tyle metod kompresji, że jest z czego wybierać.
Jak już wcześniej mówiliśmy, algorytmy kompresji obrazu wideo określamy jako systemy kodowania — codecs. Termin codec oznacza jednocześnie algorytm kompresji oraz dekompresji obrazu. Kompresja następuje w chwili tworzenia lub zapisywania pliku. Dekompresja następuje na bieżąco w trakcie odtwarzania. System kodowania nie jest integralną częścią pliku z cyfrowym obrazem wideo: zapisując film do pliku w danym formacie, zazwyczaj możemy wybrać jeden spośród kilku dostępnych algorytmów kompresji. (Przy odtwarzaniu pliku odpowiedni algorytm dekompresji zostanie wybrany i zastosowany automatycznie.)
W tym podrozdziale omówimy ogólnie metody kompresji obrazu wideo, zaś w następnym opowiemy bardziej szczegółowo o kilku wybranych algorytmach, których mógłbyś użyć dla Twoich plików.
Kodowanie symetryczne i asymetryczne
Systemy kodowania często określa się jako symetryczne lub asymetryczne (patrz rysunek 14.12). Terminy te odnoszą się do zagadnienia zachowania równowagi pomiędzy szybkością kompresji a szybkością dekompresji. Przy kodowaniu symetrycznym, kompresja filmowego obrazu zajmuje tyle samo czasu, co jego późniejsza dekompresja. Wpływa to pozytywnie na sprawność tworzenia takich plików wideo, ale niekoniecznie na ich odtwarzanie. Przy kodowaniu asymetrycznym proces kompresowania obrazu wideo trwa długo, za to czas jego dekompresji przy odtwarzaniu jest krótki. Należy pamiętać, że im krótszy jest czas dekompresji, tym większą prędkość odtwarzania pliku możemy osiągnąć.
Rysunek 14.12. Kodowanie symetryczne a kodowanie niesymetryczne |
|
Z tego względu asymetryczne systemy kodowania są korzystniejsze. Większość systemów kodowania wykazuje przynajmniej niewielką asymetrię, czas kompresji z reguły bywa dłuższy. Dla niektórych, czas ten jest o wiele, wiele dłuższy.
Porównywanie ujęć
Jak jest kompresowany obraz wideo? Są dwie możliwości. Po pierwsze, każde kolejne ujęcie może być kompresowane jak zwykły, pojedynczy obraz, a następnie dekompresowane przy odtwarzaniu. Druga metoda polega na tzw. porównywaniu ujęć (frame differencing). Frame differencing to nie system kodowania, to po prostu pewna technika pracy, z której mogą korzystać różne systemy kodowania.
Przy odtwarzaniu pliku wideo najwięcej czasu zajmuje dekompresja i wyświetlanie kolejnych ujęć. Trzeba to robić szybko, by zachować założoną prędkość odtwarzania filmu bez konieczności opuszczania niektórych ujęć. Gdy komputer przestaje nadążać z dekompresją i wyświetlaniem, niektóre ujęcia muszą być pomijane, co burzy wrażenie płynności ruchu. Porównywanie ujęć (frame differencing) to sposób na przyspieszenie dekompresji i wyświetlania. Ujęcie z pliku, dla którego użyto tej metody, zawiera o wiele mniej informacji niż ujęcie ze zwykłego pliku wideo. Nie znajdziemy w nim bowiem całego obrazu, a jedynie te jego części, które uległy zmianie względem ujęcia poprzedniego. Ta zmieniona część obrazu jest zwykle o wiele mniejsza od jego całej powierzchni; dzięki temu komputer ma mniej pracy i łatwiej jest mu nadążyć z wyświetlaniem. Z tego samego powodu mniejsze stają się rozmiary całego pliku z obrazem wideo. Rysunek 14.13 przedstawia prosty przykład zastosowania metody frame differencing.
|
Porównywanie ujęć (ang. Frame differencing) to technika kompresji, która opiera się na zapisywaniu w kolejnych ujęciach tylko tych fragmentów obrazu, które zmieniły się względem poprzedniego ujęcia. |
Porównywanie ujęć sprawdza się najlepiej w statycznych scenach typu „gadające głowy”, gdzie tło pozostaje nieruchome, jedynie stosunkowo niewielkie obiekty na pierwszym planie wykonują jakieś ruchy. Dla tych filmów, w których cały obraz zmienia się szybko z ujęcia na ujęcie, metoda frame differencing nie będzie się dobrze sprawdzać.
Rysunek 14.13. Porównywanie ujęć |
|
Ujęcia kluczowe
|
Porównywanie ujęć bazuje na ujęciach kluczowych (ang. key frames) zapisywanych w pliku filmu. Ujęcia kluczowe są zapisywane w całości i umieszczane w odpowiednich odstępach. Na ich podstawie obliczane są różnice pomiędzy kolejnymi ujęciami filmu. |
W tym przypadku porównywanie ujęć zasadza się na istnieniu tzw. ujęć kluczowych (key frames). Są one zapisywane w całości, służą za wzorce, na podstawie których określa się różnice, jakie trzeba zapisać dla ujęć pośrednich. Przy wyświetleniu każdego kolejnego ujęcia obliczane na nowo są tylko partie powierzchni, różniące się od ujęcia poprzedniego, które znów obliczane jest na podstawie ujęcia jeszcze wcześniejszego i tak dalej, aż dojdziemy do ujęcia kluczowego. Rysunek 14.14 obrazuje proces porównywania ujęć przy zastosowaniu metody ujęć kluczowych.
Rysunek 14.14. Porównywanie ujęć i ujęcia kluczowe |
|
Oczywiście, im dalej od ujęcia kluczowego się znajdziemy, tym więcej będzie zmienionych miejsc i tym więcej informacji do przeliczenia. W związku z tym rośnie prawdopodobieństwo powstania opóźnień i zmniejszenia prędkości odtwarzania. Dlatego rozstawienie ujęć kluczowych w dostatecznie krótkich odstępach czasu ma zasadnicze znaczenie dla osiągnięcia optymalnej kompresji i gładkości odtwarzania. Z drugiej strony, ujęcia kluczowe zapisywane są w całości, zawierają o wiele więcej informacji niż zwykłe ujęcia pośrednie, które zawierają tylko ewentualne różnice. Dlatego też nie chcemy mieć ich w pliku zbyt wielu; ich odczytanie i wyświetlenie zajmuje komputerowi sporo czasu. Gęstość rozmieszczenia ujęć kluczowych możemy regulować, korzystając z jakiegoś programu do edycji obrazu wideo. Ogólnie przyjętą zasadą jest umieszczanie jednego ujęcia kluczowego na sekundę wyświetlonego filmu. Przy prędkości odtwarzania 15 f/s oznacza to, że co piętnaste ujęcie w pliku powinno być ujęciem kluczowym.
Wspomaganie sprzętowe
Jak już wspominałam, ogromne ilości informacji, jakie trzeba przetworzyć przy rejestracji, kompresji oraz odtwarzaniu filmów sprawiają, iż jedynie bardzo szybkie i potężne komputery mogą obsługiwać filmy, w których klatki mają duże wymiary i są odtwarzane z dużą prędkością. Choć istnieją popularne programowe systemy kodowania, których można używać do obsługi wideo o niewielkich wymiarach i szybkości odtwarzania klatek, to jednak, gdy zajmiesz się filmami bardziej zaawansowanymi technologicznie, zazwyczaj będziesz wolał zainwestować w sprzętowy system kodowania.
Sprzętowe urządzenia wspomagające to zazwyczaj karty wideo, montowane w komputerze. Karty te są wyposażone w specjalne układy służące od obróbki cyfrowych plików wideo, zazwyczaj zakodowanych w systemach MEPG lub JPEG (opiszę je w dalszej części rozdziału). Jest wysoce prawdopodobne, że w przyszłości takie układy przetwarzające obraz mogą stać się standardowym wyposażeniem wielu komputerów. Jak na razie jednak, komputery podłączone do Internetu rzadko kiedy dysponują wspomaganiem sprzętowym i nie powinieneś zakładać możliwości wykorzystania tych rozwiązań przy tworzeniu obrazów wideo.
Systemy kodowania
Istnieje kilka doskonałych systemów kodowania przeznaczonych do programowej, jak i wspomaganej sprzętowo, rejestracji obrazu i jego odtwarzania. Dwa najpopularniejsze, CinePak oraz Indeo, mają charakter międzyplatformowy (Mac, Windows oraz Unix). Także algorytm JPEG jest bardzo rozpowszechniony przy kompresji obrazów wideo, zwłaszcza często wykorzystuje się go przy pobieraniu obrazu z taśmy wideo.
Algorytm CinePak
System kodowania CinePak, poprzednio noszący nazwę Compact Video, to najpopularniejszy algorytm kompresji dla formatu QuickTime. Może też być wykorzystywany w plikach zapisanych w formacie VfW. CinePak to algorytm kompresji stratnej. Jeśli więc zdecydujesz się z niego korzystać, staraj się zawsze, by Twój wyjściowy materiał filmowy był jak najlepszej jakości.
Algorytm CinePak korzysta z metody porównywania ujęć (frame differencing) i jest wysoce asymetryczny, tak że czas kompresji obrazu jest bardzo wysoki (widziałem kiedyś 15-sekundowy film, którego kompresja zajęła całą godzinę). Z drugiej strony, gdy już kompresja zostanie dokonana, odtwarzanie pliku przebiega gładko, a jego rozmiary są zdumiewająco małe.
Algorytm Indeo
System kodowania Indeo Video jest nieco mniej rozpowszechniony niż CinePak, ale szybko go dogania. Indeo został opracowany przez firmę Intel na potrzeby karty Intel Smart Video Recorder, doskonałego urządzenia do ściągania obrazu wideo z taśmy. Algorytm Indeo może stosować kompresję stratną lub bezstratną, wykorzystuje metodę porównywania ujęć (frame differencing) i jest znacznie mniej asymetryczny niż CinePak. Dekompresja obrazu przy odtwarzaniu pliku zajmuje jednak więcej czasu, niż wtedy, gdy zapiszemy ten sam film w systemie kodowania CinePak. Dlatego też na słabszych komputerach, które nie dysponują odpowiednią mocą obliczeniową, może łatwiej dojść do opuszczania niektórych ujęć.
Indeo pierwotnie mógł być używany wyłącznie dla plików w formacie VfW, lecz obecnie jego zakres zastosowań poszerzył się. Format QuickTime 2.0 również może z niego korzystać. Wpływa to na rosnącą popularność tego algorytmu.
Algorytm JPEG
Kompresja JPEG? Czy to nie jest standardowy algorytm kompresji map bitowych? Owszem, dokładnie ten sam algorytm kompresji może zostać użyty przy kodowaniu obrazu wideo (wtedy zwany jest czasem algorytmem motion JPEG). Nie zapominajmy, że film jest sekwencją ujęć, a każde ujęcie to po prostu pojedynczy obraz, zazwyczaj fotografia cyfrowa. Każdy z tych obrazów może zostać z powodzeniem skompresowany za pomocą zwykłego algorytmu JPEG.
Korzystanie z algorytmu JPEG, jako systemu kodowania obrazu wideo, ma dwie poważne wady: nie jest przeprowadzane porównywanie ujęć (frame differencing), a dekompresja obrazu przy wyświetlaniu jest powolna. Ponieważ algorytm JPEG zaprojektowano dla pojedynczych obrazów, kompresja poszczególnych ujęć filmu przebiega, tak jakby to były oddzielne mapy bitowe. Każde ujęcie kompresowane jest osobno, bez porównywania z innymi. Przy odtwarzaniu takiego pliku każde z ujęć jest osobno dekompresowane i wyświetlane, jedno po drugim. Istnieje spore prawdopodobieństwo, że komputer nie nadąży i dojdzie do opuszczenia niektórych ujęć, na czym ucierpi ogólna jakość odtwarzanego filmu. Dzięki zastosowaniu sprzętowego wspomagania można tego uniknąć. Wspomagany w ten sposób algorytm JPEG może okazać się zadziwiająco sprawny i szybki, szybszy nawet niż te systemy kodowania, które stosują porównywanie ujęć, ale za to są całkowicie programowe. JPEG gwarantuje przy tym doskonałą jakość obrazu i jest prawdopodobnie najłatwiej dostępnym algorytmem kompresji obrazu. Przy tych wszystkich zaletach, JPEG nie najlepiej nadaje się do kompresowania plików, które chcemy umieścić w sieci. Podobnie rzecz się ma ze wszystkimi innymi formatami wspomaganymi sprzętowo, nie można zakładać, że nasi odbiorcy będą odpowiednio wyposażeni.
Z innej strony, algorytm JPEG może być bardzo przydatny przy pobieraniu obrazów z taśmy wideo. Korzysta z niego wiele urządzeń z tej grupy. Jeśli ostatecznie planujesz użyć systemu kodowania CinePak przy Twojej pracy, to dobrym posunięciem będzie rozpocząć od ściągnięcia obrazu kodowanego właśnie w systemie JPEG (o ile tylko pobrane nagranie zmieści się na Twoim twardym dysku, zanim uda Ci się je ostatecznie skompresować).
Algorytm MPEG
Wspominamy tu o formacie MPEG, gdyż jest to zarówno format pliku, jak i system kodowania. Jak już mówiliśmy wcześniej, w poświęconym mu podrozdziale, MPEG zapewnia doskonałą jakość obrazu, lecz jego dekompresja wymaga sprzętowego wspomagania. Również sprzęt pozwalający zapisywać pliki w tym formacie jest raczej kosztowny, a więc praca nad obrazem wideo zakodowanym w systemie MPEG to poważne przedsięwzięcie. Tworząc pliki do umieszczenia w sieci, powinieneś raczej trzymać się formatów całkowicie programowych, jak CinePak lub Indeo.
|
Zasady działania algorytmu kompresji MPEG są bardzo złożone i zdecydowanie wykraczają poza tematykę poruszaną w tej książce. Jeśli interesuje Cię ten temat, zajrzyj do pliku MPEG FAQ (adres sieciowy znajdziesz wśród innych źródeł i odnośników na końcu tego rozdziału). |
Digitalizacja obrazu wideo
Czy już chcesz wyprodukować własny film do sieci? Proces ściągania obrazu, podobnie jak proces nagrywania dźwięku, jest całkiem prosty, o ile mamy już potrzebne wyposażenie. Instalujemy kartę, podłączamy do niej nasz odtwarzacz (VCR) lub kamerę, a potem wystarczy wszystko włączyć — i już!
Szczegóły techniczne mogą się oczywiście różnić, zależnie od platformy sprzętowej, z jakiej korzystamy. Ostatnio zresztą jesteśmy świadkami istnej eksplozji nowych produktów w tej branży. W tej książce spróbujemy dokonać ogólnego przeglądu technik digitalizacji obrazu wideo. Bardziej szczegółowe informacje możesz otrzymać od lokalnego dystrybutora sprzętu komputerowego albo też znaleźć je w prasie komputerowej.
Analogowy sygnał wideo
Nie trzeba szczególnie dobrze znać się na analogowym wideo, by zapisać fragment filmu w postaci cyfrowej, chyba że nasze zainteresowania sięgają o wiele głębiej. O analogowym obrazie wideo należy jednak wiedzieć dwie rzeczy: jaki mamy do dyspozycji sygnał wideo oraz jak jest on kodowany.
Sposób podłączenia do komputera naszego sprzętu wideo zależy od rodzaju sygnału wideo, z jakiego ten sprzęt korzysta. Może to być sygnał composite lub też sygnał typu S-video. Sygnał composite to typowy sygnał wideo, jaki wykorzystuje Twój telewizor, odtwarzacz (VCR) i kamera wideo (camcorder). Jeśli korzystasz z takich urządzeń, to najprawdopodobniej masz do czynienia właśnie z sygnałem typu composite. Natomiast sygnał S-video, przekazywany za pomocą innego typu kabla, jest sygnałem bardziej ekskluzywnym, gdzie informacja o kolorze i o jasności została rozdzielona dla osiągnięcia lepszej jakości obrazu. Aby jednak pracować z sygnałem S-video, musisz posiadać specjalny sprzęt.
Po podłączeniu wszystkiego, pora zastanowić się nad tym, w jakim formacie kodowany jest obraz, który będzie przesyłany do komputera. W użyciu są trzy formaty: NTSC (National Television Standards Committe), używany w większej części Ameryki Północnej oraz w Japonii; PAL (Phase Alteration Line), używany w zachodniej Europie, Wielkiej Brytanii oraz na Środkowym Wschodzie i na koniec SECAM (Systeme Electronic Pour ColeurAvec Memoire), wykorzystywany we Francji i Rosji.
Większość kart do pobierania obrazu wideo przyjmuje sygnał kodowany w formacie NTSC oraz PAL. Zazwyczaj nie musimy się o to martwić. Jeśli nie wiesz, w jakim formacie pracuje Twój sprzęt, a mieszkasz w USA, to najprawdopodobniej będzie to NTSC. Jeżeli mieszkasz gdzie indziej, lepiej sprawdź, jaki format kodowania sygnału wideo masz do dyspozycji i czy Twoja karta sobie z nim poradzi.
Obraz wideo na PC
Rynek niedrogich kart do pobierania obrazu wideo na PC rozwinął się ostatnio lawinowo. Jeśli więc interesujesz się cyfrowym obrazem wideo na PC, doradzam wizytę w sklepie ze sprzętem komputerowym. Tam dowiesz się, co jest aktualnie dostępne i co jest zalecane.
Na poziomie podstawowym, nieocenionym narzędziem do tworzenia prostych nagrań wideo na platformie PC (a także Mac) jest QuickCam firmy Connectix. Początkowo dostępna była tylko jednak, czarno-biała kamera QuickCam, która kosztowała 100 USD. Teraz dostępna jest cała seria tych kamer, rejestrują one obraz w kolorze, a najtańsza z nich kosztuje 50 USD. Najlepsza kamera QuickCam kosztuje 150 USD i jest w stanie rejestrować obraz z rozdzielczością 640x480 pikseli. Więcej informacji o tych produktach możesz znaleźć na WWW pod adresem
http://www.quickcam.com.
Firma Microsoft stworzyła grupę narzędzi służących do tworzenia i edycji plików audio i wideo oraz do konwersji różnych plików multimedialnych do formatu ASF wykorzystywanych przez platformę Windows Media. Narzędzia te można znaleźć pod adresem:
http://www.microsoft.com/windows/windowsmedia/download/default.asp
Windows Media Encoder jest używany do tworzenia plików audio oraz wideo zapisanych w formacie ASF. W pakiecie dostępnych jest także kilka innych narzędzi służących do indeksowania plików audio oraz wideo, integracji tych plików z prezentacjami tworzonymi w programie Microsoft PowerPoint oraz konwertowania plików multimedialnych zapisanych w różnych formatach, do formatu ASF.
Rysunek 14.15. Program VidEdit |
|
Także firma Intel dysponuje produktem służącym do rejestracji obrazu wideo. Nosi on nazwę Intel PC Camera, a w jego skład wchodzi kamera wideo podłączana do komputera oraz oprogramowanie do rejestracji obrazu i zapisywania go na dysku. Kamera została także wyposażona w specjalne gniazdko umożliwiające rejestrowanie obrazu z telewizora lub kamery wideo. Oprogramowanie dostarczane wraz z kamerą umożliwia tworzenie plików AVI oraz plików w formacie Intel IVS. Więcej informacji na temat tego produktu można znaleźć na WWW pod adresem:
http://www.intel.com/pccamera/
Na rynku dostępny jest także pakiet Adobe Premiere; jest to drogi pakiet służący do rejestracji i edycji obrazu wideo, działający w systemach Windows oraz Mac OS. Jest on bardzo popularny wśród osób profesjonalnie zajmujących się obróbką obrazów wideo, korzystających z komputerów Macintosh i warto się nim zainteresować, jeśli planujesz poważniej zająć się obróbką obrazu. Program umożliwia rejestrację obrazu i dźwięku, rejestrację obu tych mediów z różnych źródeł, daje duże możliwości edycji zarówno obrazu, jak i dźwięku i umożliwia zapis plików z różnymi ujęciami kluczowymi i przy wykorzystaniu różnych systemów kodowania. Więcej informacji na temat tego produktu możesz znaleźć na WWW pod adresem:
http://www.adobe.com/products/premiere
Rysunek 14.16. Program Adobe Premiere |
|
Obraz wideo na Mac-ach
Wiele nowych komputerów Macintosh jest wyposażonych w porty Firewire, do których można podłączać kamery wideo dysponujące interfejsem Firewire. Można także kupić systemy rejestracji obrazu umożliwiające współpracę z komputerami Macintosh, których koszt waha się od kilkuset do kilku tysięcy dolarów.
Dostępne są kamery QuickCam firmy Connctix, w wersjach przeznaczonych do współpracy z komputerami Macintosh. Są to doskonałe, tanie kamery przeznaczone do zastosowań amatorskich.
Do poważnych zastosowań na komputerach Macintosh wykorzystywany jest zazwyczaj program Adobe Premiere. Używa go większość profesjonalistów. Dostępne są także inne programy, takie jak: VideoShop firmy Avid, który jest tańszy i reklamowany jako łatwiejszy w obsłudze od Adobe Premiere oraz program VideoFusion firmy Radius, który jest rozprowadzany wraz z systemem Video Vision.
W końcu, iMac DV zawiera program o nazwie iMovie, który umożliwia edycje klipów wideo i zapisywanie ich w kamerach wyposażonych w interfejs Firewire oraz eksport filmów zapisanych w formacie QuickTime.
Obraz wideo w systemach uniksowych
Zależnie od tego, na jakiej stacji Unix pracujesz, możesz mieć wbudowaną kartę wideo lub możesz być zmuszony zakupić taki sprzęt oddzielnie. Drogie, nowoczesne stacje SGI oraz Sun mają gniazdka typu video input, wyposażone są też w oprogramowanie do ściągania obrazu wideo a niekiedy nawet w małe, kolorowe kamery. I tym razem po szczegółowe informacje powinieneś zwrócić się do dystrybutora.
Uzyskiwanie i konwersja plików wideo
Zupełnie tak samo, jak w przypadku map bitowych oraz dźwięku, wideoklipy możemy zrobić sami, ściągnąć je z sieci lub zakupić. Czasem może okazać się, że uzyskany plik wideo wymaga przerobienia, zmiany formatu lub systemu kodowania. Tego rodzaju operacje zazwyczaj najlepiej jest wykonywać za pomocą tego samego programu, którego użyliśmy do ściągnięcia oryginalnego obrazu z taśmy. Jeśli nie mamy takiego programu lub jeśli nasz plik wideo pochodzi z innego źródła, będzie nam potrzebne jakieś proste narzędzie do konwersji.
Do konwersji plików AVI do formatu MPEG można wykorzystać komercyjny program XingCD; istnieją także narzędzia do konwersji plików AVI do Quick-Time. Jednym z nich jest SmartCap firmy Intel, który potrafi zmieniać pliki AVI na QuickTime i na odwrót, pod warunkiem, że użyjemy systemu kodowania Indeo. Aby wykorzystać pliki AVI, potrzebny będzie pakiet programów Video for Windows, autorstwa Microsoft-u. Natomiast do odtworzenia pliku w formacie QuickTime niezbędny jest pakiet QuickTime for Windows firmy Apple. Oba te pakiety musimy mieć, aby konwertować pliki z jednego z tych formatów do drugiego.
Pracując na Macintoshu, do konwersji plików możemy wykorzystać bezpłatny (freeware) program Sparkle. Sparkle potrafi odczytywać i odtwarzać pliki MPEG oraz QuickTime'a, także dokonywać konwersji pomiędzy tymi formatami. Dodatkowo można użyć programu AVI->Quick, który zamienia pliki AVI (Video for Windows) na pliki w formacie QuickTime.
Jeśli do zapisywania Twoich plików używasz formatu QuickTime, ale chciałbyś, by pliki te można było odtwarzać także na innych platformach sprzętowych, nie tylko na komputerach Macintosh, powinieneś „spłaszczyć” ten plik. Spłaszczenie pliku QuickTime oznacza przesunięcie wszystkich danych na jeden poziom, tak by informacja mogła być odczytana również na innych platformach sprzętowych.
Przy pracy w systemie Macintosh, do spłaszczania plików wideo w formacie QuickTime może posłużyć mały, bezpłatny programik o nazwie FastPlayer. W systemie Windows to samo zadanie może spełnić program Qflat. Adresy FTP dotyczące tych programów i inne informacje znajdziesz w dodatku A.
Jeśli chcesz rejestrować obraz wideo i zapisywać go w formacie RealVideo lub konwertować do tego formatu obrazy wideo zapisane w innych formatach, możesz wykorzystać do tego celu program Real Producer firmy Real Networks. Został on stworzony specjalnie w celu edycji plików audio i wideo przeznaczonych do transmisji przy wykorzystaniu serwerów medialnych firmy i odtwarzania przy użyciu RealPlayera. Więcej informacji na ten temat możesz znaleźć na WWW pod adresem:
http://www.real.com/products/tools/index.html
Pliki wideo w sieci
Korzystając ze zwyczajnego biurkowego komputera i przeciętnego sprzętu wideo, jaki zwykle wala się po domu, nie zdołamy wyprodukować rzeczywiście dobrego wideoklipu o dużej rozdzielczości obrazu i dużej prędkości odtwarzania. Jest to ambitny cel nawet dla profesjonalistów, którzy na specjalistyczny sprzęt wydali po kilka tysięcy dolarów.
Wszystkim, co możemy osiągnąć za pomocą naszego zwykłego domowego wyposażenia, jest krótki filmik (mniej niż minutę) wyświetlany w niewielkim oknie, przy prędkości odtwarzania tak dobranej, by uniknąć poważniejszych zakłóceń prędkości ruchu. Nawet wtedy rozmiary pliku, jaki uzyskamy, będą spore. Jak już wielokrotnie podkreślałam, umieszczanie w sieci plików o dużych rozmiarach nie jest dobrym pomysłem, ze względu na ich długi czas transmisji przez sieciowe złącze.
Musimy więc pójść na kompromis. Ostateczny rozmiar pliku wideo zależy od kilku czynników:
rozmiar obrazu (rozdzielczość). Im mniejsza powierzchnia obrazu, tym mniej mamy do zapisania na dysku informacji. Ukierunkuj się na rozdzielczość 240×180, 160×120 a nawet jeszcze mniejszą;
prędkość odtwarzania. Im mniej ujęć na sekundę, tym mniejszy plik; niestety, tym gorzej z gładkością ruchu i płynnością akcji. Zachowanie dostatecznej prędkości odtwarzania to jeden z najważniejszych czynników, decyduje o dobrym wrażeniu widza. Jeżeli więc pozostaje Ci jakieś pole do manewru, spróbuj najpierw oszczędzić na czym innym niż prędkość odtwarzania. 15 ujęć na sekundę uchodzi za bardzo dobrą prędkość odtwarzania dla cyfrowego wideo, być może uda Ci się zejść do 10 bez drastycznego pogorszenia sytuacji;
głębia koloru. Podobnie jak w przypadku pojedynczych obrazów, ograniczenie liczby barw występujących w obrazie ma zbawienny wpływ na wielkość pliku;
ścieżka dźwiękowa. Stosuje się tu wszystko, o czym mówiliśmy wcześniej. (Możesz też w ogóle zrezygnować ze ścieżki dźwiękowej, oczywiście o ile się da.);
algorytm kompresji. Pewne systemy kodowania sprawdzają się lepiej niż inne dla określonego rodzaju obrazu wideo. Przykładowo, te które stosują metodę porównywania ujęć (frame differencing) są lepsze dla filmów, w których sporą część kadru zajmuje nieruchome tło. Większość programów pozwala poeksperymentować z różnymi systemami kodowania i różną gęstością rozmieszczenia ujęć kluczowych. Wypróbuj kilka wersji, aby wybrać najmniejszy plik.
Nie tylko rozmiar pliku się liczy. Jakość obrazu i prędkość odtwarzania także mają duże znaczenie i musimy je brać pod uwagę, podejmując ostateczne decyzje. Możemy, na przykład, poświęcić wysoką jakość obrazu na rzecz gładkiego, płynnego odtwarzania lub ograniczyć ilość barw, ale za to wprowadzić ścieżkę dźwiękową.
Jeśli chodzi o produkcję wideoklipów, jest kilka zasad, których warto przestrzegać. Dzięki temu uda się nam osiągnąć optymalną jakość dźwięku i obrazu, przy zachowaniu stosunkowo niewielkich rozmiarów pliku, tak by móc łatwo przesyłać go w sieci:
ściągaj obraz wprost z kamery za pomocą karty wideo. Jeśli musisz użyć taśmy wideo, postaraj się o taśmę jak najlepszej jakości;
jeśli możesz użyć sprzętu S-video, użyj go;
ścieżkę dźwiękową nagrywaj oddzielnie, korzystając ze wskazówek podanych w pierwszej części tego rozdziału. Później dołączysz ją do pliku w programie do edycji obrazu wideo;
podobnie jak w przypadku dźwięku, także obraz wideo należy tworzyć z zachowaniem jak najlepszej jakości. Później możemy użyć programu do edycji, aby ograniczyć liczbę kolorów, rozdzielczość, prędkość odtwarzania itd. Efekt będzie lepszy, niż gdybyśmy dokonali próbkowania obrazu przy niższych ustawieniach tych parametrów. Trzeba jednak pamiętać, że do przechowania takiego pliku wideo na czas jego edycji potrzebne nam będzie mnóstwo pamięci dyskowej, dyski o pojemności wielu gigabajtów nie są niczym niezwykłym w tej branży;
kompresji dokonuj na samym końcu. Jeśli to możliwe, ściągaj obrazy kompresowane algorytmem JPEG, przy zachowaniu najlepszej jakości na jaką możesz sobie pozwolić. Zasadniczej kompresji całości dokonasz później. Oczywiście to także wymaga dużej ilości miejsca na dysku.
Źródła informacji
Więcej informacji na temat formatów audio znajdziesz w poświęconych tym zagadnieniom plikach FAQ, m.in. pod adresem ftp://rtfm.mit.edu/pub/usenet/news.answers oraz ftp://ftp.uu.net/usenet/news.answers.
Dobrym wprowadzeniem w techniczne aspekty tworzenia cyfrowego dźwięku i obrazu wideo jest „Desktop Multimedia Bible” autorstwa Jeffa Burgera. W książce tej znaleźć można wyczerpujący opis analogowego oraz cyfrowego dźwięku i obrazu wideo, jak również wiele informacji na temat tworzenia nagrań audio i wideo.
Jeżeli interesujesz się cyfrowym obrazem wideo oraz filmowaniem, polecam książkę „How to digitize video” autorstwa Nelsa Johnsona, Freda Gaulta oraz Marka Florence-a, wydawnictwa John Wiley & Sons. Książka ta zajmuje się wszelkimi aspektami cyfrowego obrazu wideo, zawiera mnóstwo informacji na temat potrzebnego sprzętu i oprogramowania, a ponadto towarzyszy jej CD-ROM wypełniony oprogramowaniem, z którego możemy korzystać w systemie Windows oraz na Mac-ach.
Aby dowiedzieć się więcej o formacie MPEG (który nie jest szeroko omawiany w wyżej wymienionej książce) najlepiej zapoznaj się z plikiem MPEG FAQ. Możesz go ściągnąć z każdego miejsca, które zapewnia dostęp do plików FAQ Usenetu. By zdobyć więcej informacji o formacie QuickTime, koniecznie skorzystaj z adresu http://www. apple.com/quicktime/. Znajdziesz tam mnóstwo informacji o samym formacie, jak również przykładowe animacje i doskonale opracowany plik QuickTime.FAQ. Możesz tam nawet zamawiać oprogramowanie dla tego formatu.
Podsumowanie
Spośród plików audio i wideo rozpowszechnianych w sieci, większość przechowywana jest w plikach zewnętrznych (offline). Jednak nawet wtedy dźwięk i ruchomy obraz mogą wspaniale wzbogacić Twoją stronę sieciową, zwłaszcza jeśli masz coś ciekawego do pokazania. Przy wielu dostępnych obecnie, niedrogich urządzeniach do próbkowania dźwięku i obrazu wideo, tworzenie własnych animacji i plików dźwiękowych stało się możliwe nawet dla tych, którzy nie dysponują wielką ilością pieniędzy, ani też znacznym doświadczeniem w produkcji filmowej.
Oto krótkie podsumowanie wiadomości podanych w tym rozdziale.
Jeśli chodzi o pliki audio, nie ma standardowego formatu o uniwersalnym, międzysystemowym charakterze. Pliki w formacie AU mogą być odtwarzane na większości platform sprzętowych, ale jakość dźwięku nie jest wtedy najlepsza. Pliki AIFF oraz WAVE pozwalają uzyskać wysoką jakość dźwięku, oba w przybliżeniu równie wysoką, ale żaden z nich nie został przystosowany do działania poza własną platformą sprzętową (dla AIFF jest to Mac, dla WAVE Windows). Format MPEG Audio spopularyzował się w sieci dzięki istnieniu archiwum plików dźwiękowych, o nazwie Internet Underground Music Archive, ale kodowanie pliku w tym formacie jest kosztowne. Na koniec, format RealAudio, może być wykorzystywany do odtwarzania dźwięku na bieżąco, w trakcie ładowania pliku. Aby to jednak działało, zarówno serwer, jak i ładująca plik przeglądarka muszą posiadać dodatkowe oprogramowanie.
Dla cyfrowego obrazu wideo najpopularniejszymi formatami są QuickTime oraz MPEG. Z tych dwu, na czoło wysuwa się QuickTime ze względu na swój uniwersalny, międzyplatformowy charakter i wyłącznie programowe odtwarzanie. Dla plików w formacie QuickTime możemy stosować algorytm kompresji CinePak lub IndeoVideo; oba są bardzo dobre, choć CinePak jest odrobinę bardziej rozpowszechniony, zwłaszcza wśród przeglądarek systemu Unix.
Przy tworzeniu plików audio i wideo należy trzymać się tych samych zasad: zawsze korzystać przy nagrywaniu z najlepszego sprzętu, jaki mamy do dyspozycji i zawsze dokonywać próbkowania analogowego materiału, przy takich ustawieniach parametrów, by otrzymać plik jak najlepszej jakości. Następnie, za pomocą programu do edycji konwertujemy plik do niższej rozdzielczości oraz częstotliwości (w przypadku obrazu wideo, prędkości odtwarzania), aż do otrzymania pliku o takich rozmiarach, by nadawał się do praktycznego wykorzystania, na przykład, w sieci. Jako że pliki audio i wideo są duże, zawsze pamiętajmy o umieszczeniu w sieci opisów wszystkich plików przyłączonych do naszej strony. W opisie musi znaleźć się informacja o formacie pliku i o jego rozmiarach.
Warsztat
W tej części rozdziału znajdziesz pytania i odpowiedzi, quiz oraz ćwiczenia związane z wykorzystaniem dźwięków oraz obrazów wideo na WWW.
Pytania i odpowiedzi
P. Chciałbym utworzyć stronę w rodzaju tych, które mają wbudowaną „szpiegowską kamerę” filmującą co parę minut mnie albo moje akwarium z rybkami, albo cokolwiek innego. Jak to zrobić?
O. Szczegółowej odpowiedzi na to pytanie nie da się udzielić w oderwaniu od systemu, na którym pracujesz i jego możliwości. Jeśli masz przyłączoną do komputera kamerę, która może fotografować Ciebie lub Twoje otoczenie, musisz znaleźć jakiś sposób, by nakazać robienie tych zdjęć co kilka minut. W systemie Unix możesz użyć polecenia cron; na Mac-u lub na PC trzeba utworzyć odpowiednie makropolecenie i użyć programu, który potrafi śledzić poruszenia twej myszy oraz klawiatury (może znajdziesz gdzieś oprogramowanie wideo z wbudowaną funkcją czasową, choć do tej chwili nie napotkałam programu tego typu).
Następnie, gdy mamy już plik z obrazem, kolejnym wyzwaniem staje się dokonanie automatycznej konwersji do formatu GIF lub JPEG i umieszczenie go w serwerze sieciowym. Jeśli serwer sieciowy i komputer, przy którym zainstalowana jest kamera, to jedna i ta sama maszyna, nie ma problemu. Jeżeli jednak przesyłasz pliki na swój serwer, będziesz musiał opracować jakiś system automatycznego przenoszenia ich na właściwe miejsce.
Quiz
Spróbuj przetłumaczyć: „Luther's Banana” to 1.2 megabajtowy plik AVI z algorytmem codec CinePak i dwuścieżkową, 22 kHz ścieżką dźwiękową.
Czym jest próbkowanie?
Jaka jest główna (a być może jedyna) zaleta formatu μ-low?
Czym jest codec i co ma on wspólnego z formatami zapisu obrazu wideo?
Który z formatów zapisu obrazu wideo: AVI czy QuickTime lepiej nadaje się do wykorzystania na witrynie WWW, której użytkownicy korzystają z różnych przeglądarek?
Odpowiedzi
„Luther's Banana” to plik zapisany w formacie Video for Windows skompresowany do wielkości 1,2 MB przy wykorzystaniu algorytmu codec CinePak i dysponujący ścieżką dźwiękową stereo o przeciętnej jakości.
Próbkowanie to proces konwersji dźwięku analogowego do postaci sygnału cyfrowego, realizowany poprzez pomiar amplitudy fali dźwiękowej w wybranych punktach czasu. Każdy taki pomiar nazywany jest próbką.
Jedyną zaletą formatu μ-low jest możliwość korzystania z niego na wielu platformach systemowych.
Codec (ang. COmpresion/DECompresion) jest algorytmem służącym do kompresji i dekompresji obrazu wideo. Algorytmy kompresji wideo, podobnie jak algorytmy kompresji obrazów nie są ściśle powiązane z konkretnymi formatami zapisu plików wideo. Typowy format zapisu obrazu wideo może wykorzystywać wiele różnych algorytmów kompresji i zazwyczaj wybiera odpowiedni z nich na bieżąco, podczas odtwarzania obrazu.
Format AVI jest dobrze wykorzystywany tylko na komputerach PC, z tego względu, aby przyciągnąć więcej użytkowników (w tym osoby korzystające z komputerów Macintosh) do witryny WWW, należy użyć formatu QuickTime.
Ćwiczenia
Odwiedź Internet Underground Music Archive, poszukaj ulubionego zespołu lub rodzaju muzyki i skopiuj kilka utworów zapisanych w różnych formatach, porównując ich wielkość oraz jakość dźwięku.
Wykorzystując dowolną z popularnych wyszukiwarek (takich jak Yahoo!, Lycos, itp.), poszukaj na WWW plików wideo. Jak wiele spośród nich to pliki AVI, QuickTime, MPEG? Czy istnieją jakieś reguły określające, jakie rodzaje witryn częściej wykorzystują pewien format plików wideo niż inne formaty?
Angielską wersję tej strony można znaleźć pod adresem http://www.microsoft.com/windows/windowsmedia/en/default.asp.
432 Część 5. Multimedia i aplety Javy
Rozdział 14. Dźwięk i obraz wideo 431