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

ffmpeg-kit-extended হলো একটি বিস্তৃত Flutter এবং React Native প্লাগইন যা মোবাইল এবং ডেস্কটপ প্ল্যাটফর্মগুলির জন্য FFmpeg, FFprobe এবং FFplay 9.0.1 API গুলিকে র‍্যাপ করে। এটি সরাসরি নেটিভ FFmpeg লাইব্রেরিগুলিতে বাঁধার জন্য Dart FFI ব্যবহার করে, যা অ্যান্ড্রয়েড, iOS, macOS, লিনাক্স এবং উইন্ডোজ জুড়ে উচ্চ-পারফরম্যান্স মিডিয়া ম্যানিপুলেশন, তথ্য পুনরুদ্ধার এবং অডিও/ভিডিও প্লেব্যাক প্রদান করে। প্রধান ক্ষমতাগুলো অন্তর্ভুক্ত: - ইউনিফাইড সারফেস API (অ্যান্ড্রয়েড Surface, iOS/macOS CVPixelBuffer/Metal, লিনাক্স OpenGL, উইন্ডোজ) সহ ক্রস-প্ল্যাটফর্ম ভিডিও প্লেব্যাক - UI থ্রেড ব্লক না করে অ্যাসিঙ্ক্রোনাস এবং সমান্তরাল কমান্ড এক্সিকিউশন - লাইভ প্লেব্যাক পর্যবেক্ষণের জন্য অবস্থান এবং ভিডিও মাত্রার রিয়েল-টাইম স্ট্রিমিং - সম্পূর্ণ সেশন লাইফসাইকেল ম্যানেজমেন্ট (স্টার্ট, ক্যান্সেল, সেশন তালিকা) - লগ, পরিসংখ্যান এবং সমাপ্তি ইভেন্টগুলোর জন্য বিস্তারিত কলব্যাক - সংস্করণ, বিল্ড তারিখ এবং উপলব্ধ muxers, demuxers, encoders, decoders, filters অনুসন্ধান করার জন্য প্যাকেজ ইন্ট্রোস্পেকশন API - কাস্টম নেটিভ লাইব্রেরি লোডিং এবং কনফিগারেশনের সাপোর্ট - কম্প্যানিয়ন ffmpeg-kit-builders রিপোজিটরির মাধ্যমে স্থাপনযোগ্য কাস্টম বিল্ড প্রি-বাণ্ডল করা বিল্ড পাঁচটি স্তরে অফার করা হয়: base (শুধুমাত্র কোর), audio, video, video_hw (হার্ডওয়্যার-ত্বরিত ভিডিও), এবং full (সমস্ত প্ল্যাটফর্ম-সামঞ্জস্যপূর্ণ লাইব্রেরি)। ফুল ব্যান্ডলে ডেস্কটপ প্ল্যাটফর্মগুলিতে libopenvino, libtensorflow, libonnxruntime, libtorch, whisper, এবং pocketsphinx-এর মতো AI লাইব্রেরি অন্তর্ভুক্ত থাকে। কোডেক (libx264, libx265, libvpx, libaom, libdav1d ইত্যাদি), স্ট্রিমিং (libsrt, librist, librtmp), হার্ডওয়্যার ত্বরণ (Vulkan, OpenCL, CUDA, VAAPI, VideoToolbox, MediaFoundation), এবং প্ল্যাটফর্ম-নির্দিষ্ট ফ্রেমওয়ার্ক (AVFoundation, MediaCodec, JNI) জুড়ে বিস্তৃত পরিসরের এক্সটার্নাল লাইব্রেরি সাপোর্ট করা হয়। প্ল্যাটফর্ম সাপোর্ট ম্যাট্রিক্স: - অ্যান্ড্রয়েড (API 26+): armv7, arm64, x86_64; Flutter ও React Native - iOS 13+ / tvOS 13+: arm64; Flutter ও React Native (tvOS Flutter সাপোর্টেড নয়) - macOS 13+: arm64, x86_64; Flutter ও React Native - লিনাক্স (glibc 2.28+): x86_64; শুধুমাত্র Flutter - উইন্ডোজ 8+: x86_64; Flutter ও React Native বান্ডলের আকার প্ল্যাটফর্ম এবং স্তর অনুযায়ী পরিবর্তিত হয় (যেমন, অ্যান্ড্রয়েড base ~30-38 MB, full ~113-170 MB; iOS base ~50-55 MB, full ~112-147 MB)। GPL-লাইসেন্সপ্রাপ্ত লাইব্রেরিগুলো চিহ্নিত করা হয়েছে; পারমিসিভ লাইসেন্সিংয়ের জন্য LGPL ব্যান্ডল সুপারিশ করা হয়। প্লাগইনটি pub.dev (ffmpeg_kit_extended_flutter) এবং npm (ffmpeg-kit-extended)-এ প্রকাশিত হয়েছে।