TBS 2603 - sprzętowy enkoder H.264 i H.265 do zastosowań domowych i profesjonalnych (część 2) - artykuł na sat-charts.eu
TBS 2603 - sprzętowy enkoder H.264 i H.265 do zastosowań domowych i profesjonalnych (część 2)

TBS 2603 - sprzętowy enkoder H.264 i H.265 do zastosowań domowych i profesjonalnych (część 2)Zapraszamy do przeczytania drugiej części recenzji TBS 2603 - enkodera sygału HDMI do strumienia IP w AVC lub HEVC. W tym odcinku przekonamy się czy kodowanie HEVC jest wydajniejsze niż AVC, stworzymy pierwszą transmisję multicastową i zastanowimy się w jakich sytuacjach możemy wykorzystać ten enkoder.

Kodeki

Jak wspomnieliśmy wcześniej enkoder TBS 2603 potrafi kompresować sygnał wideo za pomocą dwóch kodeków: AVC oraz HEVC. Czym są owe kodeki i czym się od siebie różnią?

Zacznijmy od początku. Kodeki przetwarzają obraz i dźwięk w taki sposób, że pliki audio i wideo zajmują mniej miejsca, a ich strumienie potrzebują mniejszej przepływności bitowej by zachować optymalną jakość.

Kodeki podzielić możemy na dwie grupy: kodeki bezstratne oraz kodeki stratne. Kodeki bezstratne nie usuwają z kompresowanej treści żadnych informacji. W celu zmniejszenia objętości pliku lub strumienia multimedialnego korzysta się wówczas głównie z koderów entropijnych. Niestety taka treść zajmuje nadal bardzo dużo miejsca. Dlatego kompresję bezstratną multimediów wykorzystuje się głównie profesjonalnie (produkcja, archiwizacja, mastering).

Kodeki stratne dają o wiele lepsze rezultaty, jeśli chodzi o rozmiary plików i przepływności strumieni, ale kosztem jakości. Usuwane są bowiem informacje będące w pewnym sensie redundantne, których po zdekodowaniu nie uda się w 100% odtworzyć. W przypadku treści audio i wideo przy projektowaniu algorytmów ich kompresji stratnej korzysta się z modeli psychoakustycznych i psychowizualnych. Dzięki tej wiedzy odrzuca się najmniej istotne dane o dźwięku oraz obrazie, które i tak byłyby niezauważone przez nasze zmysły. Ilość odrzucanych danych jest zazwyczaj określana przez stopień kompresji. Czyli im wyższy jest stopień kompresji tym gorszej jakości jest obraz i dźwięk, jednakże potrzeba jest mniejszej ilości danych do ich zapisania lub wolniejszego łącza do ich przesłania. Dąży się jednak do pewnej optymalizacji co jest doskonale widoczne w przykładzie różnych generacji kodeków wykorzystywanych w telewizji cyfrowej.

Przez wiele lat najpopularniejszym kodekiem był MPEG-2 część 2 (H.262). Stosowany był (oraz w wielu przypadkach nadal jest) do kompresji kanałów nadawanych w standardowej rozdzielczości. Jednakże w przypadku kanałów HD treść kompresowana za pomocą H.262 potrzebuje co najmniej 20 Mb/s by zachować akceptowalną jakość strumienia. Rozwiązaniem problemu jest nowsza generacja kodeka MPEG, a mianowicie MPEG-4 część 10 (AVC - Advanced Video Coding, nazwa kodowa ITU H.264). AVC w porównaniu do MPEG-2 potrzebuje średnio dwa razy mniejszą przepływność bitową do uzyskania wideo o podobnej jakości. W AVC nadawane są obecnie kanały w polskiej naziemnej telewizji cyfrowej oraz niemal wszystkie kanały polskich platform satelitarnych.

Kolejnym postępem w dziedzinie kompresji wideo jest MPEG-H część 2 (HEVC - High Efficiency Video Coding, H.265). Kodek ten zaczyna być coraz bardziej popularny. Wdrażają go m.in. Niemcy oraz Czesi w ramach telewizji naziemnej w standardzie DVB-T2. Czym się wyróżnia? Według badań BBC z 2016 roku HEVC zapewnia 44% oszczędności przepływności bitowej wobec AVC dla podobnej jakości wideo. Dodatkowo H.265 został zoptymalizowany dla rozdzielczości wyższych niż HD (do 8K) w czym AVC przegrywa.

Tworzymy transmisjÄ™ multicastowÄ… w sieci lokalnej

Enkoder TBS 2603 pozwala na transmisję strumienia audio-wideo za pomocą różnych protokołów i trybów. Wśród wspieranych protokołów znajdziemy HTTP, UDP, RTP, RTSP, RTMP oraz ONVIF. W naszym przykładzie stworzymy transmisję multicastową z wykorzystaniem protokołu UDP.

Enkoder pozwala jednocześnie na transmisję dwóch niezależnych strumieni utworzonych z jednego źródła sygnału HDMI. Daje to nam możliwość emisji z jednego urządzenia strumieni o różnych parametrach jakościowych (np. strumień HD i SD) czy przeznaczonych dla różnych urządzeń dekodujących (np. jednoczesny strumień HEVC oraz AVC).

W celu odpowiedniej konfiguracji kodera wideo w oknie interfejsu webowego wybieramy zakładkę "HDMI main" lub "HDMI 2nd".

Pierwszą opcją, którą musimy wybrać jest oczywiście kodek, z którego będziemy korzystać. Do wyboru mamy AVC oraz HEVC.

Dla kodera AVC możemy także dobrać odpowiedni profil (baseline, main oraz high). W przypadku kodera HEVC w urządzeniu zaimplementowano wyłącznie profil baseline.


Ekran ustawień parametrów kodeka HEVC


Następnie ustawiamy standardowe parametry: liczbę klatek na sekundę (w zakresie od 5 do 30, mimo to można ustawić również wartość równą 60), tryb kontroli przepływności bitowej (CBR - stały bitrate, VBR - bitrate zmienny dobierany przez enkoder w zależności od dynamiki treści źródła oraz fixedqp - ze zdefiniowanymi wcześniej parametrami kwantyzacji), odstęp pomiędzy klatkami kotwiczymi (od 5 do 200), rozdzielczość obrazu (od 640x360 do 1920x1080 + opcja auto, która ustawia rozdzielczość źródła), przepływność bitową (od 16 kb/s do 12 Mb/s). W przypadku wyboru opcji VBR pojawi się pole pozwalające wybrać maksymalny bitrate, a przy fixedqp pola do wpisania parametrów kwantyzacji.

Po ustawieniu powyższych parametrów czas na ustawienie trybu w jakim realizowana będzie transmisja. Dla protokołów HTTP i RTSP wybieramy port (1 - 65535) oraz ścieżkę dostępu (standardowo ustawioną jako "/hdmi"). W przypadku protokołu UDP (unicast, multicast) oraz RTP i RTMP ustawiamy docelowe adresy IP oraz porty. Przy RTMP ustawimy również dane zabezpieczające strumień (nazwę użytkownika oraz hasło).

Jednocześnie możemy korzystać tylko z jednego protokołu, więc odblokowanie (enable) jednego trybu zablokuje pozostałe (disable). Nie wyklucza to jednak ustawienia innego trybu dla drugiego strumienia (konfiguracja w zakładce "HDMI 2nd").


Scena dynamiczna: HEVC (po lewej) vs AVC (po prawej)


Następnie warto przejść do zakładki "Audio Expand" dzięki której wybierzemy koder audio. Domyślne wybrany jest AAC (Advanced Audio Coding). Jako drugą opcję wybrać możemy koder MP3, ale prawdopodobnie jest błąd w jego implementacji. Mianowicie niezależnie jaką wartość bitrate'u wybierzemy, ścieżka MP3 brzmi jak dźwięk 32 kbps (słaba jakość). Takiego problemu nie ma przy wyborze AAC (bitrate od 48 kbps do 256 kbps - bardzo dobra jakość dźwięku).

Podczas testów korzystaliśmy z protokołu UDP w trybie multicast. Jako koder pierwszego strumienia wybraliśmy HEVC, drugi ustawiono jako AVC. Sygnałem źródłowym HDMI był sygnał z dekodera cyfrowej telewizji naziemnej. Taka konfiguracja miała na celu sprawdzenie zachowania enkodera przy różnych przepływnościach wyjściowych i różnych kodekach. Pozwoliło to na empiryczne zauważenie różnic pomiędzy generacjami kodeków.

Status urzÄ…dzenia

Zanim przejdziemy do porównania kodeków AVC i HEVC wspomnimy jeszcze o zakładce "Status". Pozwala ona na szybkie podejrzenie podstawowych informacji na temat wybranego kodera. Dzięki niej możemy sprawdzić jaki jest aktualny adres IP naszych transmisji oraz parametry wideo i audio sygnału wejściowego HDMI.




 

AVC vs HEVC

Korzystając z TBS 2603 warto przyjrzeć się jak wygląda ta sama treść wideo skompresowana za pomocą AVC oraz HEVC. Pozwoli to na doświadczalne dostrzeżenie różnic w wynikach pracy koderów różnych generacji. Różnica ta jest najlepiej zauważalna dla niskich przepływności.

W konfiguracji testowej w obu przypadkach ustawiono rozdzielczość 720x576, tryb CBR oraz maksymalny bitrate na 300 kb/s. W rzeczywistym strumieniu wyjściowym AVC oraz HEVC przepływność bitowa zmieniała się z zakresie od ok. ~300 do 800 kb/s. Najwyraźniej treści źródłowej enkoder nie mógł zakodować z mniejszą przepływnością.


Scena dynamiczna: HEVC (po lewej) vs AVC (po prawej)


Jak widać na powyższym przykładzie wideo HEVC charakteryzuje lepszą jakością niż AVC przy tej samej przepływności. Obraz jest wyraźniejszy i nie ma takiej pikselizacji obrazu jak to jest w przypadku AVC. Natomiast przy scenach statycznych AVC niemal dorównuje jakością HEVC.


Scena statyczna: HEVC (po lewej) vs AVC (po prawej)


Nic dziwnego, że wielu nadawców stara się zaadaptować nowy kodek w swoich sieciach. HEVC przy przepływnościach z rzędu 600 - 800 kb/s dla kanałów SD oferuje taką samą jakość obrazu jak AVC przy 2 Mb/s. W takim przypadku oszczędność pasma jest znaczna, w szczególności gdy w sieci nadajemy dużą liczbę kanałów.


Dane dotyczÄ…ce wygenerowanego strumienia w programie VLC


Dodatkowe funkcje TBS 2603

Jedną z dodatkowych funkcji enkodera jest dodanie tekstowego znaku wodnego do nadawanej treści. Aby tego dokonać należy wejść do opcji "HDMI OSD Setting" w zakładce "Audio Expand". Ustawić możemy pozycję napisu, stopień jego przeźroczystości oraz wielkość (niestety w ograniczonym zakresie). Szkoda jednak, że nie można wybrać np. czcionki.


Przykładowy znak wodny dodany w lewym górnym rogu


W tym samym oknie ustawić można również parametry logo. Jednak jego dodanie do obrazu wymaga nieco wysiłku. Producent musi najpierw zbudować odpowiednią wersję oprogramowania, która będzie zawierała w sobie zaszyty plik graficzny z logo, które mu wysłaliśmy. Mamy nadzieję, że w nowszych wersjach software'u dodawanie logo zostanie uproszczone.



Po stracie sygnału wejściowego (np. gdy niechcący odłączymy kabel HDMI) na ekranie pojawi się plansza z napisem "Video lost". Również i tu przydałaby się pewna personalizacja np. umożliwienie użytkownikowi wgrania własnej planszy informującej o usterkach.

Przykładowe zastosowania enkodera TBS 2603

Do czego można wykorzystać enkoder TBS 2603? Urządzenie to ma szerokie spektrum zastosowań. TBS 2603 może z łatwością zastąpić kartę do przechwytywania obrazu HD z interfejsu HDMI. Przyda się on np. przy robieniu screenshotów lub archiwizacji wideo z odbiorników satelitarnych, kablowych lub naziemnych czy konsol wideo.

TBS 2603 przydatny może być również przy prowadzeniu szkoleń. Enkoder można podłączyć do wyjścia HDMI karty graficznej komputera i strumieniować wyświetlaną prezentację jako multicast (szczególnie przydatne gdy szkolenia prowadzone są w dużych salach, gdzie nie każdy ma dobry widok na główny ekran). Innym zastosowaniem enkodera może być budowa sieci strumieniowej dla systemów monitoringu CCTV czy systemów telewizji hotelowej. Enkoder może być także wydajnym elementem lokalnej sieci IPTV.

Podsumowanie

TBS 2603 jest bardzo ciekawym urządzeniem. Potrafi skompresować sygnał wideo z wejścia HDMI kodekiem AVC jak i przyszłościowym HEVC i przesłać je dalej w sieci IP. Urządzenie działa stabilnie i ma szeroki zakres konfiguracji. Podczas testu stabilnościowego (8 godzin) transmisja nie została ani razu zerwana, co sugeruje, że enkoder może być wykorzystywany w zastosowaniach profesjonalnych. Sprzęt zbytnio się nie grzeje, jest cichy i według zapewnień producenta pobiera nie więcej niż 6 watów podczas pracy.

Przyczepić można się tylko do interfejsu webowego, którego wygląd należałoby trochę poprawić i lepiej zlokalizować. Mianowicie w interfejsie webowym TBS 2603 możemy wejść np. do ustawień złącz CVBS, których urządzenie fizycznie nie posiada. Wygląda na to, że każdy z modeli enkoderów od TBS korzysta z tego samego kodu panelu webowego. Według nas warto byłoby ukrywać niepotrzebne opcje w zależności od rzeczywistych możliwości hardware'u.

Plusy:
- kompresja AVC oraz HEVC dla wideo,
- poprawnie działająca kompresja AAC dla audio,
- szeroki zakres konfiguracji koderów wideo,
- dwa niezależne wyjścia sygnału IP z jednego źródła HDMI,
- stabilna praca,
- przyszłościowy zakup zważywszy na sprzętowe wsparcie HEVC
- szeroki zakres zastosowań (IPTV, szkolnictwo, przechwytywanie wideo, sieci monitoringu).


Minusy:
- potrzebna lepsza lokalizacja web panelu,
- problem z dźwiękiem MP3,
- ograniczone możliwości konfiguracji znaku wodnego i logo.


Dziękujemy firmie TBS za przekazanie enkodera do testów.

źródło: sat-charts.eu
TBS 2603 - sprzętowy enkoder H.264 i H.265 do zastosowań domowych i profesjonalnych (część 2)

Pozostałe informacje


Komentarze ():