कुछ दिन पहले यह था Rav1e 0.3 का नया संस्करण जारी किया, जो है एक AV1 एनकोडर जो रस्ट में लिखा गया है और यह उच्च प्रदर्शन में से एक के रूप में तैनात है। राव 1 ई है सभी उपयोग मामलों को कवर करने के लिए डिज़ाइन किया गया, हालांकि अपने वर्तमान स्वरूप में यह उन मामलों के लिए अधिक उपयुक्त है जहां लाइबॉम है।
यह सभी प्रमुख AV1 सुविधाओं का समर्थन करता है, सहित vnutrenne और बाह्य रूप से एन्कोडेड फ़्रेम (इंट्रा और इंटर-फ़्रेम) 64 × 64 सुपरब्लॉक, रंग सबसम्पलिंग 4: 2: 0, 4: 2: 2 और 4: 4: 4, 8, 10 और 12 बिट रंग एन्कोडिंग, RDO ( वेग विरूपण अनुकूलन) विरूपण अनुकूलन, फ्रेम के बीच परिवर्तन की भविष्यवाणी करने और परिवर्तनों का पता लगाने, प्रवाह दर को नियंत्रित करने और दृश्य त्रासदी का पता लगाने के लिए विभिन्न मोड।
AV1 प्रारूप H.264 और VP9 से काफी आगे है संपीड़न क्षमताओं में, लेकिन उन्हें लागू करने वाले एल्गोरिदम की जटिलता के कारण, इसे एन्कोडिंग के लिए काफी अधिक समय की आवश्यकता होती है (एन्कोडिंग गति के संदर्भ में, लाइबॉम libvpx-vp9 के पीछे सैकड़ों गुना और x264 के पीछे हजारों बार है)।
Rav1e एनकोडर प्रदर्शन के 11 स्तर प्रदान करता है, जिनमें से उच्चतम गति वास्तविक समय एन्कोडिंग के करीब गति की अनुमति देता है। एनकोडर एक कमांड लाइन उपयोगिता और एक पुस्तकालय के रूप में दोनों उपलब्ध है।
नया Rav1e 0.3 क्या है?
इस नए संस्करण की रिलीज़ के साथ, विशेषताओं में से एक है जो सबसे बाहर खड़ा है कि एन्कोडिंग मोड में सुधार किया गया था, जिसके साथ यह अपने पिछले संस्करणों की तुलना में बहुत तेज है।
इसके अलावा बायनेरिज़ का आकार कम कर दिया गया है (लिनक्स के लिए x86_64 प्लेटफ़ॉर्म पर, पुस्तकालय लगभग 3 एमबी पर कब्जा कर लेता है), जिसके साथ किए गए काम को बेहतर तरीके से अनुकूलित किया गया था।
X86_64 आर्किटेक्चर के लिए, अतिरिक्त अनुकूलन लागू किए जाते हैं SIMD निर्देशों और स्व-वेक्टरिंग का उपयोग बढ़ाया जाता है।
एक और महत्वपूर्ण बदलाव है wasm32-wasi प्लेटफ़ॉर्म के लिए अतिरिक्त बिल्ड समर्थन (WebAssembly सिस्टम इंटरफ़ेस), साथ ही स्विच फ्रेम के बीच के अंतराल को निर्धारित करने के लिए "-S" (-switch-फ़्रेम-अंतराल) विकल्प।
अन्य परिवर्तनों में से जो बाहर खड़े हैं Rav1e 0.3 के इस नए संस्करण में:
- वीडियो से अवरुद्ध कलाकृतियों को हटाने के लिए बहु-थ्रेडेड फ़िल्टर जोड़ा गया।
- विधानसभा का समय लगभग 14% कम करने के लिए काम किया गया था।
- स्मृति आवंटन संचालन की संख्या को 1/6 से कम करने के लिए काम किया गया था।
- RDO (दर विरूपण अनुकूलन) में, तर्क को घुसपैठ की विकृतियों को दबाने के लिए सुधार किया जाता है।
- कुछ संचालन को अस्थायी बिंदु अंकगणित से पूर्णांक गणना में परिवर्तित किया गया है।
- दूसरी गति स्तर में 1-2% एन्कोडिंग गुणवत्ता में सुधार हुआ था।
- आंदोलन की दिशा (इंट्रा एज) की भविष्यवाणी करने के लिए एक नया फ़िल्टर जोड़ा गया।
Ubuntu और डेरिवेटिव पर rav1e कैसे स्थापित करें?
जो लोग अपने सिस्टम में इस एवी 1 एनकोडर को स्थापित करने में सक्षम होने के लिए इच्छुक हैं, उन्हें पता होना चाहिए कि वर्तमान में rav1e लिनक्स पर संकलित करने के लिए उपलब्ध है हालाँकि Windows के लिए एक exe उपलब्ध है।
इस मामले में हम इसे उबंटू और इसके डेरिवेटिव में स्थापित करने में सक्षम हैं, इसलिए ऐसा करने के लिए, उनके पास अपने सिस्टम पर Rust स्थापित होना चाहिए।
यदि आपके पास यह नहीं है, तो आपको क्या करना चाहिए अपने सिस्टम पर एक टर्मिनल खोलें (आप इसे Ctrl + Alt + T शॉर्टकट से कर सकते हैं) और इसमें आप निम्नलिखित कमांड टाइप करने जा रहे हैं:
sudo apt install curl curl https://sh.rustup.rs -sSf | sh
बाद में हमें केवल विकल्प 1 टाइप करना होगा और यह इंस्टॉल हो जाएगा। एक बार यह हो जाने के बाद, हम पर्यावरण को रस्ट कंपाइलर के साथ कॉन्फ़िगर करने जा रहे हैं:
source $HOME/.cargo/env
अब rav1e को स्थापित करने के लिए, हम टाइप करने जा रहे हैं:
sudo apt -y install cargo git perl nasm cmake clang pkg-config
हम rav1e कोड को क्लोन करते हैं:
git clone https://github.com/xiph/rav1e.git mv rav1e rav1e-git cd rav1e-git
और हम संकलन के साथ शुरू करते हैं:
git submodule update –init cmake aom_build/aom -DAOM_TARGET_CPU=x86_64 -DCONFIG_AV1_ENCODER=0 -DENABLE_TESTS=0 -DENABLE_DOCS=0 -DCONFIG_LOWBITDEPTH=1 make -j$(nproc) cargo build --release cp target/
और इसके साथ तैयार है, आप इस एनकोडर के साथ काम कर सकते हैं।
यदि आप rav1e के उपयोग के बारे में जानना चाहते हैं तो आप परामर्श कर सकते हैं निम्नलिखित लिंक।