Kód podpory kodeku VP9 ve V4L2 pro čipy Hantro a Rockchip byl přepsán v Rustu

Daniel Almeida, vývojář video kodeků ve společnosti Collabora, představil novou implementaci vrstvy pro vývojáře linuxového jádra, která umožňuje využívat hardwarové video dekodéry VP9 v subsystému V4L2, což poskytuje přístup k zařízením pro záznam videa, jako jsou webové kamery a televizní tunery. Kód vrstvy je kompletně přepsán v Rustu a je navržen pro spolupráci s ovladači rkvdec a hantro, které poskytují přístup k hardwarové akceleraci dekódování videa dostupné v čipech Rockchip a Hantro.

Kód implementující podporu VP9 pro v4l2 má přibližně 2 000 řádků. Uváděným důvodem pro vytvoření alternativní implementace Rustu je snaha dosáhnout další úrovně ochrany využitím funkcí Rustu pro bezpečnost paměti v kódu, který implementuje poměrně složité algoritmy a používá se ke zpracování dat uživatelského prostoru prostřednictvím rozhraní V4L2. Ačkoli je implementace Rustu v současné době považována za experimentální prototyp, při testování s balíčkem Fluster, který vyhodnocuje shodu dekodéru s referenčními specifikacemi, verze C a Rust přinesly shodné výsledky.

Zdroj: opennet.ru

Přidat komentář