Podpora kodeku VP9 ve V4L2 pro čipy Hantro a Rockchip byla převedena do Rustu

Daniel Almeida, který se zabývá vývojem video kodeků ve společnosti Collabora, představila pro diskuzi vývojářům jádro Linuxu novou implementaci vrstvy pro využití hardwarových video dekodérů formátu VP9 v subsystému V4L2, který se používá pro přístup k zařízením pro videozáznam, jako jsou webkamery a TV tunery. Kód vrstvy byl kompletně přepsán v jazyce Rust a je zaměřen na práci s ovladači rkvdec a hantro, které poskytují přístup k hardwarovým prostředkům pro zrychlení dekódování videa dostupným v čipech Rockchip a Hantro.

Kód s implementací podpory VP9 pro v4l2 zabírá přibližně 2000 řádků. Jako důvod pro vznik alternativní implementace v jazyce Rust se uvádí touha dosáhnout dodatečné úrovně ochrany díky využití prostředků, které jazyk Rust poskytuje pro bezpečné manipulace s pamětí v kódu, který obsahuje implementaci dostatečně složitých algoritmů a používá se pro zpracování dat doručovaných z uživatelského prostoru prostřednictvím rozhraní V4L2. I když implementace v Rustu má prozatím status vývoje experimentálního prototypu, při testování paketem Fluster, který hodnotí shodu dekodérů s referenčními specifikacemi, pro verze v C a Rust ukázaly identické výsledky.

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster