ืžื”ื“ื•ืจื” ืฉืœื™ืฉื™ืช ืฉืœ dav1d, ืžืคืขื ื— AV1 ืžื”ืคืจื•ื™ืงื˜ื™ื VideoLAN ื•-FFmpeg

ืงื”ื™ืœื•ืช VideoLAN ื•-FFmpeg ืคื•ืจืกื ืžื”ื“ื•ืจื” ืฉืœื™ืฉื™ืช (0.3) ืฉืœ ืกืคืจื™ื™ืช dav1d ืขื ื™ื™ืฉื•ื ืฉืœ ืžืคืขื ื— ืคื•ืจืžื˜ ืงื™ื“ื•ื“ ื•ื™ื“ืื• ื—ืœื•ืคื™ ื‘ื—ื™ื ื AV1. ืงื•ื“ ื”ืคืจื•ื™ืงื˜ ื›ืชื•ื‘ ื‘ืฉืคืช C (C99) ืขื ืชื•ืกืคื•ืช ืืกืžื‘ืœืจ (NASM/GAS) ื• ืžื•ืคืฅ ืขืœ ื™ื“ื™ ืชื—ืช ืจื™ืฉื™ื•ืŸ BSD. ืžื™ื•ืฉืžืช ืชืžื™ื›ื” ื‘ืืจื›ื™ื˜ืงื˜ื•ืจื•ืช x86, x86_64, ARMv7 ื•-ARMv8, ื•ืžืขืจื›ื•ืช ื”ืคืขืœื” Linux, Windows, macOS, Android ื•- iOS.

ืกืคืจื™ื™ืช dav1d ืชื•ืžื›ืช ื‘ื›ืœ ืชื›ื•ื ื•ืช AV1, ื›ื•ืœืœ ืชืฆื•ื’ื•ืช ืžืชืงื“ืžื•ืช ืชืช ื“ื’ื™ืžื” ื•ื›ืœ ืคืจืžื˜ืจื™ ื‘ืงืจืช ืขื•ืžืง ื”ืฆื‘ืข ื”ืžืฆื•ื™ื ื™ื ื‘ืžืคืจื˜ (8, 10 ื•-12 ืกื™ื‘ื™ื•ืช). ื”ืกืคืจื™ื™ื” ื ื•ืกืชื” ืขืœ ืื•ืกืฃ ื’ื“ื•ืœ ืฉืœ ืงื‘ืฆื™ื ื‘ืคื•ืจืžื˜ AV1. ื”ืžืืคื™ื™ืŸ ื”ืžืจื›ื–ื™ ืฉืœ dav1d ื”ื•ื ื”ื”ืชืžืงื“ื•ืช ืฉืœื• ื‘ื”ืฉื’ืช ื‘ื™ืฆื•ืขื™ ื”ืคืขื ื•ื— ื”ื’ื‘ื•ื”ื™ื ื‘ื™ื•ืชืจ ื”ืืคืฉืจื™ื™ื ื•ื”ื‘ื˜ื—ืช ืขื‘ื•ื“ื” ื‘ืื™ื›ื•ืช ื’ื‘ื•ื”ื” ื‘ืžืฆื‘ ืจื™ื‘ื•ื™ ื”ืœื™ื›ื™ื.

ื”ื’ืจืกื” ื”ื—ื“ืฉื” ืžื•ืกื™ืคื” ืื•ืคื˜ื™ืžื™ื–ืฆื™ื•ืช ื ื•ืกืคื•ืช ื›ื“ื™ ืœื”ืื™ืฅ ืืช ืคืขื ื•ื— ื”ื•ื•ื™ื“ืื• ื‘ืืžืฆืขื•ืช ื”ื•ืจืื•ืช SSSE3, SSE4.1 ื•-AVX2. ืžื”ื™ืจื•ืช ื”ืคืขื ื•ื— ื‘ืžืขื‘ื“ื™ื ืขื SSSE3 ืขืœืชื” ื‘-24%, ื•ื‘ืžืขืจื›ื•ืช ืขื AVX2 ื‘-4%. ื ื•ืกืฃ ืงื•ื“ assembly ืœื”ืืฆื” ื‘ืืžืฆืขื•ืช ื”ื•ืจืื•ืช SSE4.1, ืฉื”ืฉื™ืžื•ืฉ ื‘ื• ื”ืขืœื” ืืช ื”ื‘ื™ืฆื•ืขื™ื ื‘-26% ื‘ื”ืฉื•ื•ืื” ืœื’ืจืกื” ื”ืœื ืžื•ืชืืžืช (ืœืขื•ืžืช ืื•ืคื˜ื™ืžื™ื–ืฆื™ื•ืช ื”ืžื‘ื•ืกืกื•ืช ืขืœ ื”ื•ืจืื•ืช SSSE3, ื”ืจื•ื•ื— ื”ื•ื 1.5%).

ืžื”ื“ื•ืจื” ืฉืœื™ืฉื™ืช ืฉืœ dav1d, ืžืคืขื ื— AV1 ืžื”ืคืจื•ื™ืงื˜ื™ื VideoLAN ื•-FFmpeg

ื‘ื™ืฆื•ืขื™ ื”ืžืคืขื ื— ื‘ืžื›ืฉื™ืจื™ื ื ื™ื™ื“ื™ื ืขื ืžืขื‘ื“ื™ื ื”ืžื‘ื•ืกืกื™ื ืขืœ ืืจื›ื™ื˜ืงื˜ื•ืจืช ARM64 ื”ื•ื’ื“ืœื• ืืฃ ื”ื. ืขืœ ื™ื“ื™ ื”ื˜ืžืขืช ืคืขื•ืœื•ืช ื‘ืืžืฆืขื•ืช ื”ื•ืจืื•ืช NEON, ื”ื‘ื™ืฆื•ืขื™ื ืขืœื• ื‘ื›-12% ื‘ื”ืฉื•ื•ืื” ืœืžื”ื“ื•ืจื” ื”ืงื•ื“ืžืช.

ืžื”ื“ื•ืจื” ืฉืœื™ืฉื™ืช ืฉืœ dav1d, ืžืคืขื ื— AV1 ืžื”ืคืจื•ื™ืงื˜ื™ื VideoLAN ื•-FFmpeg

ื‘ื”ืฉื•ื•ืื” ืœืžืคืขื ื— ื”ื™ื™ื—ื•ืก aomdec (libaom), ื”ื™ืชืจื•ืŸ ืฉืœ dav1d ืžื•ืจื’ืฉ ื‘ืฆื•ืจื” ื”ื—ื–ืงื” ื‘ื™ื•ืชืจ ื›ืืฉืจ ืขื•ื‘ื“ื™ื ื‘ืžืฆื‘ ืจื™ื‘ื•ื™ ื”ืœื™ื›ื™ื (ื‘ื‘ื“ื™ืงื•ืช ืžืกื•ื™ืžื•ืช dav1d ืžื”ื™ืจ ืคื™ 2-4). ื‘ืžืฆื‘ ืฉืœ ื—ื•ื˜ ื™ื—ื™ื“, ื”ื‘ื™ืฆื•ืขื™ื ืฉื•ื ื™ื ื‘-10-20%.

ืžื”ื“ื•ืจื” ืฉืœื™ืฉื™ืช ืฉืœ dav1d, ืžืคืขื ื— AV1 ืžื”ืคืจื•ื™ืงื˜ื™ื VideoLAN ื•-FFmpeg

ืžื”ื“ื•ืจื” ืฉืœื™ืฉื™ืช ืฉืœ dav1d, ืžืคืขื ื— AV1 ืžื”ืคืจื•ื™ืงื˜ื™ื VideoLAN ื•-FFmpeg

ื”ื™ื™ืชื” ื”ืฆืœื—ื” ื‘ืฉื™ืžื•ืฉ ื‘-dav1d ื‘ืคืจื•ื™ืงื˜ื™ื ืื—ืจื™ื. ื‘ืจื™ืจืช ื”ืžื—ื“ืœ ื”ื™ื dav1d ืขื›ืฉื™ื• ื—ืœ ื‘-Chromium/Chrome 74 ื•-Firefox 67 (ืœืฉืขื‘ืจ dav1d ื”ื™ื” ื›ืœื•ืœ ืขื‘ื•ืจ Windows, ืื‘ืœ ืขื›ืฉื™ื• ืžื•ึผืคืขึธืœ ืขื‘ื•ืจ ืœื™ื ื•ืงืก ื•-macOS). ื”ืžืฉืš ื”ืฉื™ืžื•ืฉ ื‘-dav1d ื‘-FFmpeg ื•-VLC, ืžืขื‘ืจ ืžืชื•ื›ื ืŸ ืœ-dav1d transcoder ื‘ึผึถืœึถื ื™ึธื“.

ื–ื›ื•ืจ ื›ื™ ื”-Codec ืฉืœ ื”ื•ื•ื™ื“ืื• AV1 ืฉืคื•ืชื—ื” ืขืœ ื™ื“ื™ ื”ื‘ืจื™ืช ืžื“ื™ื” ืคืชื•ื—ื” (AOMedia), ื”ื›ื•ืœืœืช ื—ื‘ืจื•ืช ื›ืžื• Mozilla, Google, Microsoft, Intel, ARM, NVIDIA, IBM, Cisco, Amazon, Netflix, AMD, VideoLAN, CCN ื•-Realtek. AV1 ืžืžื•ืงื ื›ืคื•ืจืžื˜ ืงื™ื“ื•ื“ ื•ื™ื“ืื• ื–ืžื™ืŸ ืœืฆื™ื‘ื•ืจ, ืœืœื ืชืžืœื•ื’ื™ื, ืฉืžืงื“ื™ืžื” ื‘ืื•ืคืŸ ื ื™ื›ืจ ืืช H.264 ื•-VP9 ืžื‘ื—ื™ื ืช ืจืžื•ืช ื”ื“ื—ื™ืกื”. ืขืœ ืคื ื™ ืžื’ื•ื•ืŸ ื”ืจื–ื•ืœื•ืฆื™ื•ืช ืฉื ื‘ื“ืงื•, ื‘ืžืžื•ืฆืข AV1 ืžืกืคืง ืืช ืื•ืชื” ืจืžืช ืื™ื›ื•ืช ืชื•ืš ื”ืคื—ืชืช ืงืฆื‘ื™ ื”ืกื™ื‘ื™ื•ืช ื‘-13% ื‘ื”ืฉื•ื•ืื” ืœ-VP9 ื•ื ืžื•ืš ื‘-17% ืž-HEVC. ื‘ืงืฆื‘ื™ ืกื™ื‘ื™ื•ืช ื’ื‘ื•ื”ื™ื, ื”ืจื•ื•ื— ืขื•ืœื” ืœ-22-27% ืขื‘ื•ืจ VP9 ื•ืœ-30-43% ืขื‘ื•ืจ HEVC. ื‘ืžื‘ื—ื ื™ ืคื™ื™ืกื‘ื•ืง, AV1 ืขืœื” ืขืœ ื”ืคืจื•ืคื™ืœ ื”ืจืืฉื™ H.264 (x264) ื‘-50.3% ืžื‘ื—ื™ื ืช ืจืžืช ื”ื“ื—ื™ืกื”, ื”ืคืจื•ืคื™ืœ ื”ื’ื‘ื•ื” H.264 ื‘-46.2% ื•-VP9 (libvpx-vp9) ื‘-34.0%.

ืžืงื•ืจ: OpenNet.ru

ื”ื•ืกืคืช ืชื’ื•ื‘ื”