Firma Valve zaprezentowała eksperymentalny kodek wideo Pyrowave

Firma Valve ogłosiła włączenie do wersji beta klienta Steam kodeka wideo Pyrowave, zoptymalizowanego do strumieniowego przesyłania wideo z niskimi opóźnieniami w sieciach o wysokiej przepustowości. Kodek został dodany jako opcja w usłudze Steam Remote Play, umożliwiającej transmisję rozgrywki lub przesyłanie obrazu na własny system podczas gry na innych urządzeniach. W wersji Steam dla systemu Linux kodek jest dostępny po aktywacji w ustawieniach trybu SteamRT3. Implementacja kodeka została napisana w języku C++ i jest rozpowszechniana na licencji MPL.

Kodek obsługuje tylko oddzielne kodowanie każdej klatki (intra-only), niezależnie od sąsiednich klatek (wszystkie klatki są kluczowe, kompresja międzyklatkowa nie jest stosowana). Tego rodzaju podejście pozwala na uzyskanie bardzo wysokiej dokładności przesyłania obrazu i wyklucza pojawianie się artefaktów przy ruchu i nagłej zmianie tła. Przy kodowaniu obrazów stosowane jest dyskretne przekształcenie falek z filtrem CDF 9/7, analogicznie do formatu JPEG2000, oraz trywialne kodowanie entropijne, co pozwala na efektywne zrównoleglenie obliczeń.

Kodek jest bardzo wymagający pod względem przepustowości łącza — w porównaniu z innymi kodekami strumieniowymi Pyrowave wymaga przesyłania od 5 do 10 razy większej ilości danych. Zaleca się stosowanie kodeka do transmisji i dostępu do gier w sieci lokalnej z podłączeniem do portów Ethernet o gigabitowej przepustowości. Domyślnie bitrate jest wybierany automatycznie w zależności od treści, ale przy ograniczonej przepustowości sieci oferowane jest ustawienie dla określenia górnej granicy bitrate'u (dopuszczalne wartości od 100 do 500 Mbit/s).

Pyrowave jest zoptymalizowany do bardzo szybkiego kodowania i dekodowania z wykorzystaniem GPU i jest w pełni zaimplementowany w formie obliczeniowych shaderów. Przy wystarczającej przepustowości (bitrate na poziomie ~200+ mbit/s) kodek wykazuje minimalne opóźnienia na poziomie 0,1 ms przy jakości 1080p i 0,2 ms przy jakości 4K. Aby zapewnić odporność na utratę pakietów, w Pyrowave stosowane jest izolowane kodowanie blokami 64×64.

Obsługiwane są HDR oraz przestrzenie kolorów YCbCr 4:2:0 i 4:4:4. HDR włącza się automatycznie, gdy jest obsługiwany zarówno po stronie hosta, jak i klienta. Format kodowania koloru 4:4:4 wymaga bardziej zasobożernych obliczeń i zwiększa ruch, dlatego jest domyślnie wyłączony i zaleca się jego aktywację podczas przesyłania treści pulpitu lub w przypadku potrzeby zwiększenia czytelności tekstu w wideo.

Źródło: opennet.ru

Kup niezawodny hosting stron z ochroną DDoS, serwery VPS VDS 🔥 Kup niezawodny hosting stron z ochroną DDoS, serwery VPS VDS - ProHoster