منصوبے کے بارے میں
ffmpeg-kit-extended ایک جامع Flutter اور React Native پلگ ان ہے جو موبائل اور ڈیسک ٹاپ پلیٹ فارمز کے لیے FFmpeg، FFprobe اور FFplay 9.0.1 APIs کو لپیٹتا ہے۔ یہ Dart FFI استعمال کرتے ہوئے براہ راست مقامی FFmpeg لائبریریوں سے جڑتا ہے، اور Android، iOS، macOS، Linux اور Windows پر اعلیٰ کارکردگی والی میڈیا ہیرا پھیری، معلومات کی بازیافت اور آڈیو/ویڈیو پلے بیک فراہم کرتا ہے۔
اہم صلاحیتیں شامل ہیں:
- متحد سطح API کے ساتھ کراس پلیٹ فارم ویڈیو پلے بیک (Android Surface، iOS/macOS CVPixelBuffer/Metal، Linux OpenGL، Windows)
- UI تھریڈ کو بلاک کیے بغیر غیر متزامن اور متوازی کمانڈ پر عمل درآمد
- لائیو پلے بیک نگرانی کے لیے پوزیشن اور ویڈیو طول و عرض کی حقیقی وقت میں اسٹریمنگ
- مکمل سیشن لائف سائیکل مینجمنٹ (شروع، منسوخ، سیشنز کی فہرست)
- لاگز، اعداد و شمار اور تکمیل کے واقعات کے لیے تفصیلی کال بیکس
- ورژن، بلڈ تاریخ اور دستیاب muxers، demuxers، encoders، decoders، filters کی استفسار کے لیے پیکیج انٹرو اسپیکشن API
- حسب ضرورت مقامی لائبریری لوڈنگ اور کنفیگریشن کی حمایت
- ساتھی ffmpeg-kit-builders ریپوزٹری کے ذریعے تعینات کیے جانے والے حسب ضرورت بلڈز
پہلے سے بنڈل شدہ بلڈز پانچ درجوں میں پیش کیے جاتے ہیں: base (صرف بنیادی)، audio، video، video_hw (ہارڈویئر سے تیز رفتار ویڈیو)، اور full (تمام پلیٹ فارم کے موافق لائبریریاں)۔ full بنڈل میں ڈیسک ٹاپ پلیٹ فارمز پر AI لائبریریاں جیسے libopenvino، libtensorflow، libonnxruntime، libtorch، whisper اور pocketsphinx شامل ہیں۔ کوڈیکس (libx264، libx265، libvpx، libaom، libdav1d وغیرہ)، اسٹریمنگ (libsrt، librist، librtmp)، ہارڈویئر ایکسیلیریشن (Vulkan، OpenCL، CUDA، VAAPI، VideoToolbox، MediaFoundation) اور پلیٹ فارم مخصوص فریم ورکس (AVFoundation، MediaCodec، JNI) میں وسیع پیمانے پر بیرونی لائبریریوں کی حمایت کی جاتی ہے۔
پلیٹ فارم سپورٹ میٹرکس:
- Android (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
- Linux (glibc 2.28+): x86_64؛ صرف Flutter
- Windows 8+: x86_64؛ Flutter اور React Native
بنڈل سائز پلیٹ فارم اور درجے کے لحاظ سے مختلف ہوتے ہیں (مثلاً Android 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) پر شائع کیا گیا ہے۔
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.