عن المشروع

FFsubsync هي أداة سطر أوامر ومكتبة بايثون وأداة متصفح مستقلة عن اللغة لمزامنة الترجمات تلقائيًا مع الفيديو أو ملفات الترجمة المرجعية. تقوم بمحاذاة توقيتات النص مع نقاط البداية الصحيحة في ملفات الوسائط المتعددة. ### كيف تعمل تعمل خوارزمية المزامنة الأساسية في ثلاث خطوات رئيسية: 1. تقسيم كل من دفق الصوت في ملف الفيديو والترجمات إلى نوافذ زمنية مدتها 10 مللي ثانية. 2. تحديد ما إذا كانت كل نافذة تحتوي على كلام. يتم تحليل الترجمات مباشرة، بينما يتم تحليل تدفقات الصوت باستخدام كاشفات نشاط الصوت الجاهزة (VAD) مثل تلك المدمجة في WebRTC. 3. محاذاة السلاسل الثنائية الناتجة عن طريق تعظيم التطابقات من خلال نهج الالتفاف باستخدام تحويل فورييه السريع (FFT)، مما يقلل التعقيد الزمني إلى O(n log n). ### الميزات الرئيسية - **أنواع مراجع متعددة:** المزامنة مع ملفات الفيديو أو ملفات الصوت أو ملفات الترجمة المرجعية المتزامنة بشكل صحيح (.srt) أو عناوين URL البعيدة. - **إصدار قائم على المتصفح:** يعمل بالكامل على جانب العميل دون تثبيت عبر WebAssembly (ffmpeg.wasm)، مما يضمن بقاء الملفات محلية. - **كشف ترميز قوي:** استنتاج ترميزات نص الترجمة القديمة تلقائيًا (مثل Windows-1251 وGBK وShift-JIS وUTF-16 مع علامات ترتيب البايت) باستخدام كاشفات احتياطية متعددة. - **خيارات مزامنة متقدمة:** دعم تصحيح معدل الإطارات، ونسب البحث بالبحث الذهبي، والمحاذاة الجزئية (--split-penalty) للقطع في منتصف الملف، وخلفيات VAD بديلة (Auditok وSilero/PyTorch). - **دعم Docker:** صور حاويات مبنية مسبقًا متاحة عبر سجل حاويات GitHub. - **واجهة برمجة تطبيقات مكتبة بايثون:** يمكن استدعاؤها برمجيًا مع عمليات استدعاء تقدم مخصصة.