Każdy kodek streamingowy z ostatnich dwudziestu lat został stworzony z myślą o oszczędzaniu przepustowości. Ten celowo ją pomija.
Kodek Pyrowave firmy Valve pojawił się w poniedziałkowej becie klienta Steam jako opcja eksperymentalna w ramach funkcji Remote Play i nie jest modyfikacją istniejącej ścieżki H.264/HEVC/AV1. To zupełnie inny kodek i również jego idea jest całkowicie odmienna od dotychczasowych rozwiązań. Dziennik zmian firmy Valve jasno mówi, że Pyrowave „ignoruje ustawienia przepływności, używając co najmniej 250 Mb/s”. Nie ma suwaka jakości, który można by przesunąć w dół. Jeśli Twoje łącze nie obsługuje takich prędkości, to tego nie włączaj.
A jakie są korzyści?
Otrzymujesz za to opóźnienie mierzone w dziesiątych częściach milisekundy. Kodek nie wykorzystuje klasycznego podejścia, w którym część klatek przechowuje pełny obraz, a pozostałe zapisują jedynie zmiany względem poprzednich ujęć. W Pyrowave każda klatka jest kompresowana niezależnie. Nie ma tutaj estymacji ruchu ani zależności między kolejnymi klatkami. Jeśli jeden pakiet zostanie utracony podczas transmisji, problem dotyczy pojedynczego obrazu. Następna klatka nie musi czekać na odbudowanie całego łańcucha danych. To kosztowny sposób przetwarzania wideo, dlatego właśnie nikt nie oferuje go do streamingu filmów. W przewodowej sieci LAN, gdzie przepustowość jest tanim zasobem, nabiera to jednak sensu.
Według analiz Phoronix zapotrzebowanie na przepustowość może być nawet pięć do dziesięciu razy większe niż przy konwencjonalnych kodekach. Dla użytkownika z gigabitowym połączeniem LAN może to być jednak akceptowalny koszt w zamian za mniejsze opóźnienie.
Pyrowave korzysta z nietypowej technologii
Od strony technicznej kodek bardziej przypomina rozwiązania znane z JPEG 2000 niż popularne kodeki wideo. Pyrowave wykorzystuje dyskretną transformację falkową z filtrem CDF 9/7, a następnie koduje dane bitplan po bitplanie.
Interesujące jest to, co zostało usunięte. Podczas gdy JPEG 2000 opakowuje to wszystko w arytmetyczny koder, na tyle rozbudowany, że jest strasznie powolny, Pyrowave emituje bitplany w stanie surowym. Bez etapu kodowania entropijnego, bez niczego, co mogłoby konkurować z GPU o kontrolę.
Cały kodek jest zaimplementowany w shaderach obliczeniowych Vulkan. Jego autor, Hans-Kristian Arntzen, lepiej znany w świecie gier linuksowych z vkd3d-proton i Fossilize, podaje czas kodowania. Według pomiarów autora Pyrowave kodowanie i dekodowanie obrazu 1080p może zajmować mniej niż 0,1 ms. Dla 4K wynik pozostaje poniżej 0,2 ms. Przy 60 klatkach na sekundę pojedyncza klatka ma do dyspozycji około 16,7 ms, więc udział samego kodeka w całkowitym opóźnieniu może być bardzo mały.
Drugą zaletą jest odporność na błędy, którą większość osób odczuje, nie wiedząc dlaczego. W konwencjonalnym strumieniu utracony pakiet uszkadza klatkę odniesienia, a każda klatka utworzona na jej podstawie rozmywa się, dopóki klient nie zażąda nowej klatki kluczowej. Pyrowave nie może się nic zepsuć. Każda klatka jest klatką kluczową, więc utracony pakiet kosztuje dokładnie jedną klatkę, a następna jest prawidłowa.
HDR i pełne 4:4:4 mają znaczenie
Obsługuje również HDR i pełne nasycenie barw 4:4:4, co ma większe znaczenie niż sugeruje specyfikacja. Podpróbkowanie 4:2:0, używane przez większość koderów strumieniowych, sprawia, że drobny tekst i cienkie linie interfejsu użytkownika zamieniają się w papkę, gdy tylko próbujesz użyć komputera zdalnego do czegokolwiek innego niż gra.
Na razie to eksperyment dla wymagających
Pyrowave jest dostępny w wersji beta na systemach Windows i macOS, a także na Linuksie, jeśli korzystasz z eksperymentalnego klienta SteamRT3. Można go włączyć w zaawansowanych ustawieniach klienta Remote Play.
Phoronix szacuje koszt przepustowości na pięć do dziesięciu razy wyższy niż w przypadku konwencjonalnego kodeka streamingowego, więc jest to funkcja dla łącz minimum gigabitowych, a przeciążona sieć Wi-Fi może w wielu przypadkach nie podołać, dlatego też póki co nikt nie wspomina o konsolach typu SteamDeck.
Spodobało Ci się? Podziel się ze znajomymi!

Pokaż / Dodaj komentarze do:
Steam zmasakruje ci Wi-Fi. Valve zrobiło odwrotnie niż cała reszta