عن المشروع
Ruffle هو محاكي مفتوح المصدر لبرنامج Adobe Flash Player، مكتوب بلغة Rust. يعمل كتطبيق سطح مكتب وفي المتصفح عبر WebAssembly، ويهدف إلى إبقاء محتوى Flash القديم (ملفات SWF) قابلاً للتشغيل بعد توقف Flash Player الرسمي.
ما يوفره:
- دعم ActionScript 1 و2 و3، ويصفه المشروع بأنه مكتمل إلى حد كبير لكنه لا يزال قيد التطوير.
- عرض تجريبي على الويب حيث يمكن للمستخدمين تحميل ملف SWF محلي مباشرة في المتصفح.
- إصدارات ليلية لمنصات سطح المكتب والويب.
- إضافات متصفح لـ Firefox وChrome، وحزمة Flathub، وحزمة npm، وحزمة AUR.
- عميل سطح المكتب مبني على wgpu-rs، مع ميزات تحليل اختيارية (Tracy) وتسميات تصحيح للعرض.
- أداة مسح ضوئي لتحليل مجموعات ملفات SWF بشكل جماعي والإبلاغ عن نجاح التحليل.
- أداة تصدير تعرض لقطات شاشة PNG لملف SWF، اختياريًا عبر إطارات متعددة، ويمكن تشغيلها بدون واجهة رسومية.
أبرز ملامح البنية من README:
- core: المحاكي الأساسي والكود المشترك
- swf: محلل SWF وActionScript
- desktop: عميل سطح المكتب
- web: عميل الويب وإضافة المتصفح
- render: محركات العرض لسطح المكتب والويب
- video: محركات فك تشفير الفيديو
- flv: مفكك تشفير فيديو Flash
- wstr: تنفيذ سلسلة متوافق مع Flash
- scanner وexporter: أدوات سطر الأوامر
يتطلب البناء من المصدر مجموعة أدوات Rust مستقرة حديثة وJava في PATH (لفئات ActionScript 3 المدمجة). يحتاج مستخدمو Linux إلى حزم تطوير نموذجية مثل رؤوس ALSA وudev وfontconfig وfreetype وOpenSSL. تعمل إصدارات سطح المكتب عبر cargo، ويمكن تمرير ملف SWF محدد كوسيطة. يمكن لمستخدمي macOS تثبيت إصدار HEAD عبر Homebrew tap الخاص بالمشروع. تتبع إصدارات الويب والإضافات التعليمات في دليل الويب، ويعيش تطبيق Android في مستودع منفصل ruffle-android.
الترخيص مزدوج Apache-2.0 / MIT، ويتم قبول المساهمات بنفس الشروط. ينشر المشروع مدونة لقواعد السلوك ويرحب بمساهمات المجتمع.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.