SVT-AV1 2.0 (Scalable Video Technology AV1) номын сангийн хувилбар нь AV1 видео кодчилолын форматын кодлогч ба декодлогчийн хэрэгжилтээр хэвлэгдсэн бөгөөд үүнийг хурдасгахад орчин үеийн Intel CPU-д байдаг техник хангамжийн зэрэгцээ тооцоолох хэрэгслийг ашигладаг. Уг төслийг Intel компани Netflix-тэй хамтран видео бичлэгийн кодыг шууд хөрвүүлэх, эрэлт хэрэгцээтэй видео (VOD) үйлчилгээнд ашиглахад тохиромжтой гүйцэтгэлийн түвшинд хүрэх зорилготойгоор бүтээжээ. Одоогоор AV1 видео кодчилолын форматыг боловсруулахад хяналт тавьдаг Open Media Alliance (AOMedia)-ийн ивээл дор хөгжүүлэлт хийгдэж байна. Өмнө нь уг төслийг SVT-HEVC болон SVT-VP9 кодлогчийг хөгжүүлдэг OpenVisualCloud төслийн хүрээнд боловсруулсан. Энэ кодыг BSD лицензийн дагуу түгээдэг.
SVT-AV1-ийг C99 стандартыг дэмждэг хөрвүүлэгчтэй ямар ч архитектурт суурилсан системд угсарч болох боловч SIMD заавар дээр суурилсан угсралтын оновчлолыг ашигладаг x86_64 системүүд дээр хамгийн сайн гүйцэтгэлд хүрдэг (энэ нь зүйтэй юм. CPU-д AVX2-ийг дэмждэг боловч хамгийн багадаа хангалттай бөгөөд SS2). Санах ойн хэрэглээ нь "-lp" сонголтоор зохицуулагддаг кодчилол хийх явцад ашигласан процессорын цөмүүдийн тооноос хамаарна. AV1-д ашигласан алгоритмуудын нарийн төвөгтэй байдлаас шалтгаалан энэ форматыг кодлох нь бусад форматаас хамаагүй их нөөц шаарддаг бөгөөд энэ нь бодит цагийн кодчилолд зориулж стандарт AV1 кодлогч ашиглахыг зөвшөөрдөггүй. Жишээлбэл, AV1 төслийн хувьцааны кодлогч нь x5721 ("үндсэн" профиль), x5869 ("өндөр" профиль) болон libvpx-vp658 кодлогчтой харьцуулахад 264, 264, 9 дахин их тооцоолол шаарддаг.
Шинэ SVT-AV1 хувилбарын өөрчлөлтүүдийн дунд:
- Шинэ хувилбарын дугаарлалт руу шилжилт хийсэн бөгөөд үүний дагуу API/ABI өөрчлөлт бүрт хувилбарын эхний цифр өөрчлөгдөх болно.
- Хоосон фрейм ашиглахын оронд сүүлийн фрейм дэх урсгалын төгсгөлийн заалт (EOS - End Of Stream) руу шилжихтэй холбоотой өөрчлөлтүүд API-д хийгдсэн бөгөөд энэ нь нэмэлт фрейм хүлээх саатлыг арилгасан. API өөрчлөлт нь FFmpeg кодын санд аль хэдийн тусгагдсан байна.
- Гурван дамжилтын хувьсах битийн хурдны горимыг (3 дамжих VBR) устгасан бөгөөд одоо олон дамжуулалттай VBR механизмаар сольсон. FFmpeg-тэй нэгдмэл байдлыг хангахын тулд VBR олон дамжуулалтын горимыг хоёр дамжуулалт болгон бууруулсан.
- Кодер дээр оновчлолуудыг нэмсэн бөгөөд үүний үр дүнд M9-M13 урьдчилан тохируулсан шахалтын үр ашиг 1-4% -иар нэмэгдэж, LP 5 горимд M20 урьдчилан тохируулсан санах ойн хэрэглээ 35-8% буурсан байна. бусад горимд 1-5%. Бусад урьдчилан тохируулсан санах ойн хэрэглээ 1-5% буурсан.
- Чанарын өндөр түвшинг тогтоосон урьдчилсан тохиргоонд чанар/хурдны бууралтыг оновчтой болгох ажлыг хийсэн. Лавлагааны чанарын MR урьдчилсан тохируулгыг 100% хурдасгасан.
- Зөвхөн C хэл дээр бичигдсэн функцүүдэд ARM-т зориулсан оновчлолыг нэмсэн.
Нэмж дурдахад, dav1d 1.4.1 төсөл гарсан бөгөөд үүний хүрээнд VideoLAN болон FFmpeg нийгэмлэгүүд AV1 видео кодчилолын өөр үнэгүй декодлогчийг хэрэгжүүлсэн номын санг боловсруулж байна. Dav1d номын сан нь AV1-ийн бүх боломжуудыг дэмждэг, үүнд дэд дээж авах дэвшилтэт төрлүүд болон техникийн үзүүлэлтэд заасан өнгөний гүнийг хянах бүх параметрүүд (8, 10, 12 бит). dav1d-ийн гол онцлог нь код тайлах хамгийн дээд гүйцэтгэлийг хангах, олон урсгалтай горимд өндөр чанартай ажлыг хангахад чиглэгддэг. Төслийн код нь угсралтын оруулгатай (NASM/GAS) C (C99) дээр бичигдсэн бөгөөд BSD лицензийн дагуу түгээгддэг. x86, x86_64, ARMv7 болон ARMv8 архитектурууд болон FreeBSD, Linux, Windows, macOS, Android болон iOS үйлдлийн системүүдийн дэмжлэгийг хэрэгжүүлсэн.
dav1d 1.4 хувилбар нь шинэ Loongarch болон RISC-V архитектуруудыг дэмжихээс гадна AVX-512 зааварт суурилсан нэмэлт оновчлолуудыг нэвтрүүлж, ARM систем дээрх 6 товшилтын шүүлтүүрийн ажиллагааг хурдасгаж, олон урсгалтай ажлын үр ашгийг нэмэгдүүлж, хурдыг бууруулснаараа онцлог юм. ARM64, ARM32 болон RISC систем дээрх хоёртын өгөгдлийн хэмжээ V. CVE-2024-1580 цоорхойг зассан бөгөөд энэ нь маш том хүрээг боловсруулах үед бүхэл тоо хэт ихэссэний улмаас хязгаараас гадуур бичихэд хүргэсэн.
Эх сурвалж: opennet.ru
