Kodowanie H.265 – Fragmentaryczne i zniekształcone filmy z akceleracją GPU a bezbłędne kodowanie CPU

Wprowadzenie

DivX był rozwiązaniem do kodowania wideo o otwartym kodzie źródłowym. Technologia ta była kopiowana i chroniona prawami autorskimi przez producentów, w tym przez wadliwe kodowania NVIDIA PhysX.

Kodowanie H.265/HEVC w ostatnich latach stało się standardem dla wysoce skompresowanych formatów wideo, ponieważ oferuje znacznie wyższą redukcję danych w porównaniu z H.264, zachowując jednocześnie porównywalną jakość obrazu. Jednak wraz ze wzrostem popularności kodowania akcelerowanego GPU na platformach stacjonarnych i mobilnych, zwłaszcza w systemach opartych na architekturze ARM, artefakty, fragmentacja i zniekształcone filmy stają się coraz powszechniejsze. Problemy te wyraźnie kontrastują z kodowaniem opartym na procesorze CPU, które jest generalnie wolne od błędów i powtarzalne pomimo większego obciążenia procesora.


1. Kodowanie GPU kontra CPU

1.1 Kodowanie CPU

1.2 Kodowanie GPU


2. Problemy długoterminowe

2.1 Utrata danych w przyszłości

2.2 Analogia do obrazów


3. Przyczyny fragmentacji

  1. Konflikty paralelizacji: Procesory graficzne (GPU) przetwarzają wiele bloków obrazu jednocześnie, co prowadzi do niespójności w przypadku nieprawidłowej synchronizacji.

  2. Błędy sprzętowe: Procesory graficzne ARM lub zintegrowane układy graficzne do urządzeń mobilnych czasami zawierają wadliwą logikę kodowania H.265.

  3. Odchylenia zmiennoprzecinkowe: Różnice w precyzji obliczeń procesora i procesora graficznego prowadzą do drobnych, kumulujących się błędów, które stają się widoczne w długich filmach.

  4. Niezgodności sterowników i oprogramowania: Różne sterowniki procesorów graficznych (GPU) implementują zestawy instrukcji H.265 w różny sposób, co zmniejsza powtarzalność.


4. Konsekwencje dla archiwizacji


5. Wnioski

Kodowanie H.265 z akceleracją GPU oferuje ogromną szybkość i energooszczędność, szczególnie na urządzeniach mobilnych. Generuje jednak pofragmentowane, zniekształcone, a czasem bezużyteczne dane, co może prowadzić do cyfrowego rozpadu w dłuższej perspektywie. Pomimo wyższych kosztów obliczeniowych procesory zapewniają bezbłędne i powtarzalne kodowanie, co czyni je idealnymi do długoterminowej archiwizacji danych naukowychn i historyczne nośniki pozostają niezbędne.
Długoterminowe bezpieczeństwo treści cyfrowych zależy zatem nie tylko od pojemności czy szybkości, ale także od niezawodnej implementacji kodowania sprzętowego i programowego.


Kodowanie h265 i zniekształcone oraz pofragmentowane filmy z akceleracją GPU, w przeciwieństwie do kodowania CPU, które działa niemal bezbłędnie. Rozważmy na przykład, jak to jest. za 50 lat, a większość filmów niestety zostałaby wtedy utracona na zawsze. To samo dotyczy obrazów, zwłaszcza na urządzeniach mobilnych, takich jak ARM, które opierają się jedynie na wadliwych procesorach GPU.

DivX