প্রকল্প সম্পর্কে

bili_add_on হলো একটি কমান্ড-লাইন টুল যা ভিডিওতে B 站 ড্যানমাকু (danmaku) ওভারলে করার জন্য ব্যবহৃত হয়। এই টুলটি B 站 ভিডিও ID থেকে স্বয়ংক্রিয়ভাবে ড্যানমাকু XML টেনে আনা সমর্থন করে, পাশাপাশি স্থানীয় XML ফাইল লোড করাও সমর্থন করে。 প্রধান বৈশিষ্ট্য এবং কার্যকারিতা: 1. **একাধিক ইনপুট মোড**: - `overlay`: স্থানীয় ভিডিও ফাইলে ড্যানমাকু ওভারলে করে, স্ট্যান্ডার্ড ইনপুট (STDIN) এবং স্ট্যান্ডার্ড আউটপুট (STDOUT) পাইপলাইন অপারেশন সমর্থন করে। - `capture`: ক্যাপচার ডিভাইস (যেমন ক্যামেরা, স্ক্রিন ক্যাপচার) থেকে রিয়েল-টাইমে ভিডিও ইনপুট নেয় এবং ড্যানমাকু ওভারলে করে। - `list-devices`: উপলব্ধ ক্যাপচার ডিভাইসগুলোর তালিকা দেখায়। 2. **রেন্ডারিং এবং কাস্টমাইজেশন**: - স্ক্রোলিং, বটম (নিচে), টপ (উপরে) এবং রিভার্স (উল্টো) সহ বিভিন্ন ড্যানমাকু মোড সমর্থন করে। - ড্যানমাকুর অপাসিটি (অস্বচ্ছতা), প্রদর্শন এলাকা (উপর ও নিচের সীমার অনুপাত), ফন্ট সাইজ স্কেলিং, স্ক্রোলিং গতি এবং লাইনের ব্যবধান কাস্টমাইজ করা যায়। - এতে গ্লিফ-লেভেল ফন্ট ফলব্যাক মেকানিজম রয়েছে, যা ব্যবহারকারীর কাস্টম ফন্ট, সিস্টেম ফন্ট এবং প্রকল্পের বিল্ট-ইন ফন্ট (যেমন 思源黑体) সমর্থন করে। 3. **এনকোডিং এবং পারফরম্যান্স**: - ভিডিও ডিকোডিং এবং এনকোডিংয়ের জন্য ffmpeg-এর ওপর নির্ভরশীল। - NVIDIA NVENC, AMD AMF এবং Intel QuickSync সহ হার্ডওয়্যার ত্বরান্বিত এনকোডিং সমর্থন করে এবং libx264 সফটওয়্যার এনকোডিং প্রিসেট টিউনিং প্রদান করে। - ডিকোডিং, রেন্ডারিং এবং এনকোডিংয়ের একটি তিন-ধাপের সমসাময়িক পাইপলাইন আর্কিটেকচার ব্যবহার করে। 4. **অডিও প্রসেসিং**: - ডিফল্টরূপে মূল ভিডিওর অডিও বজায় রাখে, এবং `--audio` ব্যবহার করে বাহ্যিক অডিও উৎস নির্দিষ্ট করা ও টাইমলাইন ক্রপ ও সারিবদ্ধ করা সমর্থন করে। এই টুলটি MIT লাইসেন্সের অধীনে ওপেন সোর্স করা হয়েছে।