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

Ruffle হলো Adobe Flash Player-এর একটি ওপেন-সোর্স এমুলেটর, যা Rust-এ তৈরি করা হয়েছে। এটি ডেক্সটপ অ্যাপ্লিকেশন হিসেবে এবং WebAssembly-এর মাধ্যমে ব্রাউজারে উভয়ভাবেই চলে, এবং অফিসিয়াল Flash Player বন্ধ হয়ে যাওয়ার পর পুরনো Flash কন্টেন্ট (SWF ফাইল) সচল রাখার উদ্দেশ্যে তৈরি করা হয়েছে। এটি যা প্রদান করে: - ActionScript 1, 2 এবং 3 সমর্থন, যা প্রজেক্ট দ্বারা মোটামুটি সম্পূর্ণ কিন্তু এখনও উন্নয়নাধীন হিসেবে বর্ণনা করা হয়েছে। - একটি ওয়েব ডেমো যেখানে ব্যবহারকারীরা সরাসরি ব্রাউজারে লোকাল SWF ফাইল লোড করতে পারেন। - ডেক্সটপ এবং ওয়েব প্ল্যাটফর্মের জন্য নাইটলি বিল্ড। - Firefox এবং Chrome-এর জন্য ব্রাউজার এক্সটেনশন, একটি Flathub প্যাকেজ, একটি npm প্যাকেজ এবং একটি AUR প্যাকেজ। - wgpu-rs-এর ওপর নির্মিত একটি ডেক্সটপ ক্লায়েন্ট, যাতে ঐচ্ছিক প্রোফাইলিং ফিচার (Tracy) এবং রেন্ডার ডেবাগ লেবেল রয়েছে। - SWF ফাইলের সংগ্রহ একসাথে পার্স করার এবং পার্সিংয়ের সফলতা রিপোর্ট করার জন্য একটি স্ক্যানার ইউটিলিটি। - একটি এক্সপোর্টার ইউটিলিটি যা SWF-এর PNG স্ক্রিনশট রেন্ডার করে (ঐচ্ছিকভাবে একাধিক ফ্রেমে) এবং হেডলেস অবস্থায় চলতে পারে। README থেকে আর্কিটেকচারের প্রধান দিকগুলো: - core: কোর এমুলেটর এবং সাধারণ কোড - swf: SWF এবং ActionScript পার্সার - desktop: ডেক্সটপ ক্লায়েন্ট - web: ওয়েব ক্লায়েন্ট এবং ব্রাউজার এক্সটেনশন - render: ডেক্সটপ এবং ওয়েবের জন্য রেন্ডারিং ব্যাকএন্ড - video: ভিডিও ডিকোডিং ব্যাকএন্ড - flv: Flash Video ডিকোডার - wstr: Flash-সামঞ্জস্যপূর্ণ স্ট্রিং ইমপ্লিমেন্টেশন - scanner and exporter: কমান্ড-লাইন ইউটিলিটি সোর্স থেকে বিল্ড করার জন্য সাম্প্রতিক স্টেবল Rust টুলচেইন এবং PATH-এ Java থাকা প্রয়োজন (বিল্ট-ইন ActionScript 3 ক্লাসের জন্য)। Linux ব্যবহারকারীদের ALSA, udev, fontconfig, freetype এবং OpenSSL হেডারের মতো সাধারণ ডেভেলপমেন্ট প্যাকেজ প্রয়োজন। ডেক্সটপ বিল্ড cargo-এর মাধ্যমে চলে এবং একটি নির্দিষ্ট SWF আর্গুমেন্ট হিসেবে পাস করা যেতে পারে। macOS ব্যবহারকারীরা প্রজেক্টের Homebrew tap-এর মাধ্যমে একটি HEAD বিল্ড ইনস্টল করতে পারেন। ওয়েব এবং এক্সটেনশন বিল্ড web ডিরেক্টরির নির্দেশাবলী অনুসরণ করে, এবং Android অ্যাপটি একটি আলাদা ruffle-android রিপোজিটরিতে রয়েছে। লাইসেন্সিং হলো দ্বৈত Apache-2.0 / MIT, এবং অবদানসমূহ একই শর্তাবলীতে গ্রহণ করা হয়। প্রজেক্টটি একটি আচরণবিধি প্রকাশ করে এবং কমিউনিটির অবদানকে স্বাগত জানায়।