Dlaczego filmy flash zużywają tak dużo procesora?

3

Czy jest to po prostu intensywne działanie procesora, czy może jest coś więcej? Dlaczego nie można odciążyć więcej przetwarzania na GPU?

Ben
źródło

Odpowiedzi:

6

Dlaczego nie można odciążyć więcej przetwarzania na GPU?

Ponieważ Flash (kiedyś) brakowało integracji z systemem operacyjnym i interfejsami API karty graficznej, które by to umożliwiały. Aby wtyczka Flash odroczyła dekodowanie do GPU, musi porozmawiać z systemem operacyjnym, a następnie z kartą graficzną, aby przekazać instrukcje dekodowania i renderowania.

Flash 10.1 w końcu wprowadził przyspieszenie GPU .

Dekodowanie H.264 z akceleracją sprzętową jest obsługiwane w przypadku niektórych kart wideo i sterowników działających w systemach Windows XP, Windows Vista i Windows 7. Dekodowanie z akceleracją sprzętową w systemach Linux i Mac OS X nie jest obsługiwane w tej wersji.

Oto główny winowajca: OS X nie pozwalają na dostęp do Flash GPU później do dekodowania wideo H.264, ale ich wsparcie nie była wspaniała. Ponieważ - mówiąc najprościej - Apple wciąż nienawidzi Flasha (brak obsługi API jest z tych samych powodów, dla których nigdy nie chcą Flasha na urządzeniu mobilnym, takim jak iPhone lub iPad). Aby zapoznać się z obsługą procesorów graficznych w systemie OS X, zapoznaj się również z tym krótkim wpisem bazy wiedzy Adobe .

Dlaczego jeszcze nie działa w systemie Linux, osobiście nie wiem.

Aby odpowiedzieć na twoje pierwsze pytanie, zacytuję również samego Adobe. Chodzi o to, że współczesne kodeki wideo, takie jak h.264, są bardzo skomplikowane do dekodowania i bardzo obciążają procesory. Jeśli nie ma interfejsu API do dekodowania GPU lub jego obsługa jest słaba, zobaczysz wysokie użycie procesora i niewiele możesz z tym zrobić.

H.264 zapewnia doskonałą jakość wideo, ale wymaga dużej mocy przetwarzania, aby go zdekodować. Filmy w formacie H.264 są dekodowane w programie Flash Player 10.1 przez procesor graficzny lub akcelerator multimediów, gdy tylko dostępny jest odpowiedni sprzęt, co znacznie poprawia wydajność odtwarzania i żywotność baterii. Jest to szczególnie przydatne w przypadku urządzeń mobilnych o ograniczonych zasobach, takich jak netbooki i smartfony.

slhck
źródło
Dziękuję za doskonałą odpowiedź. Używam MacBooka Pro. Czy mogę w jakiś sposób udawać, że nie mam Flasha, i dlatego widzę ich wersję HTML5? (i zmniejsz uczucie pieczenia na moich kolanach;)
Ben
@Ben Sure, zapisz się na wersję beta HTML5 . Nie wszystkie filmy są dostępne w formacie HTML5, ale YouTube spróbuje je Ci udostępnić w mniej nagrywający sposób (mówi tu także użytkownik MacBooka Pro). Mam jednak mieszane wyniki, a filmy się nie ładują.
slhck