Z tego artykułu dowiesz się więcej o podstawach plików multimedialnych, takich jak pojęcia kontenera i kilka z wielu dostępnych formatów kodeków, których możesz używać w strumieniu. Omówimy też takie tematy jak strumieniowanie adaptacyjne, bitrate i rozdzielczość, ale bardziej szczegółowo zajmiemy się nimi w kolejnych sekcjach.
Wyświetlanie plików wideo
Możesz sądzić, że możesz pobrać plik RAW z kamery wideo i przesłać go do sieci w takiej postaci. Rzeczywiście, strony do przesyłania strumieniowego filmów, takie jak YouTube czy Vimeo, umożliwiają to, a nawet oferują możliwość transmitowania na żywo. Aby to zrobić, wystarczy połączyć się z portem HDMI aparatu, a potem przetworzyć materiał za pomocą karty przechwytującej. Te usługi znacznie ułatwiają przetwarzanie i przesyłanie filmów, co obejmuje generowanie wielu plików i manifestów potrzebnych do strumieniowego przesyłania adaptacyjnego oraz do różnych rozdzielczości. Do tego dochodzą liczne inne skomplikowane i wymagające dokładności wymagania, które sprawiają, że samodzielne hostowanie jest dość kłopotliwe. Przygotowanie i udostępnianie filmu z Twojej witryny, a być może z osobnego serwera multimediów, jest nieco bardziej skomplikowane niż przesyłanie surowego pliku z aparatu, jeśli zależy Ci na tym, aby użytkownicy dobrze się czuli w Twojej witrynie.
Pliki wideo występują w różnych formatach. Format, który pochodzi z kamery, jest zazwyczaj plikiem .mov
lub .mp4
, jeśli masz dobry nowoczesny aparat bezlusterkowy.
Plik .mov
nadaje się do nagrywania i edytowania oraz innych wczesnych procesów postprodukcyjnych, ale ze względu na rozmiar nie nadaje się do przesyłania strumieniowego w internecie. Poza tym rozmiar pliku RAW .mp4
w 4K uniemożliwi odtwarzanie go na urządzeniu mobilnym. Ponieważ przeglądarki obsługują różne formaty plików, jeśli chcesz obsługiwać strumieniowanie adaptacyjne, musisz utworzyć kilka zoptymalizowanych plików i ewentualnie plik manifestu. Zanim przekonwertujesz pliki, musisz poznać ich podstawowe właściwości.
Kontenery, kodeki i strumienie?
Plik, który widzisz w powłoce systemu operacyjnego, to kontener, który można zidentyfikować po rozszerzeniu pliku (.mp4
, .webm
, .ogg
itp.). Kontener zawiera co najmniej 1 strumień. Plik multimedialny może zawierać dowolną liczbę strumieni w wielu formatach, których nie będziemy tu omawiać.
Przykładowe pliki użyte w tej sekcji zawierają maksymalnie 2 strumienie: strumień audio i strumień wideo. Inne typy, które możesz napotkać, to napisy i dane. Oba te tematy wykraczają poza zakres tego artykułu. Czasami strumienie audio i wideo są traktowane oddzielnie. Większość plików, które napotkasz, będzie zawierać tylko jeden strumień audio i jeden strumień wideo.
W strumieniach audio i wideo rzeczywiste dane są kompresowane za pomocą kodeka. Kodek, czyli koder/dekoder, to format kompresji danych wideo lub audio. Rozróżnienie między kontenerem a kodekiem jest ważne, ponieważ pliki z tym samym kontenerem mogą mieć zawartość zakodowaną za pomocą różnych kodeków.
Poniżej znajduje się ilustracja tej struktury. Po lewej stronie znajduje się podstawowa struktura kontenera z dwoma strumieniami. Po prawej stronie znajdziesz szczegóły tej struktury w przypadku pojedynczego pliku WebM.

Pliki w kontenerach WebM mogą być wielokrotnie mniejsze niż w przypadku innych formatów, dzięki czemu są dobrym wyborem do strumieniowego przesyłania danych w witrynach mobilnych. Niestety nie wszystkie przeglądarki obsługują aktualne kontenery i kodeki. Na przykład format WebM został stworzony specjalnie do użytku w internecie jako wysokiej jakości opcja open source, ale nie jest jeszcze powszechnie obsługiwany. W momencie pisania tego artykułu przeglądarka Safari nie obsługuje formatu WebM w przypadku osadzonych filmów. Informacje te można znaleźć na stronie Can I use. WebM zapewnia jednak częściową obsługę kodeków VP8 i VP9 używanych w WebRTC. Najlepszym rozwiązaniem jest przesłanie filmu zastępczego.
Formaty kodeków
Wiele typów plików obsługuje wiele kodeków w tym samym kontenerze. Pełna lista dostępnych kodków wideo i kodków audio zajęłaby całą stronę internetową. Linki, które właśnie podano, prowadzą do praktycznych list MDN z informacjami o tym, co można wykorzystać w internecie. Poniżej znajdziesz listę obecnie preferowanych typów plików i kodków, których mogą one używać. Kliknij linki do typów plików, aby wyświetlić przeglądarki, które je obsługują.
Typ pliku | Kodek wideo | Kodek audio |
---|---|---|
MP4 | AV1, AVC (H.264)*, VP9 | AAC |
WebM | AV1, VP9* | Vorbis, Opus |
* Wskazuje preferowany kodek wideo.
Szybkość transmisji bitów i rozdzielczość
Szybkość transmisji bitów to maksymalna liczba bitów użytych do zakodowania 1 sekundy strumienia. Im więcej bitów jest używanych do kodowania sekundy strumienia, tym większa szczegółowość i wierność. Więcej informacji o tym zagadnieniu znajdziesz w sekcji Bitrate.
Rozdzielczość to ilość informacji w pojedynczej klatce filmu, wyrażona jako liczba pikseli logicznych w każdym wymiarze. Więcej informacji o tym pojęciu znajdziesz w sekcji Rozwiązanie.
W kolejnym artykule Podstawy aplikacji multimedialnych pokażemy, jak sprawdzać te cechy za pomocą dwóch narzędzi wiersza poleceń: Shaka Packager i FFmpeg.