عن المشروع
FreeCut هو محرر فيديو متعدد المسارات يعمل في المتصفح ومرخص تحت MIT. لا يتطلب تثبيتًا ولا يرفع الوسائط: تبقى المشاريع والوسائط محلية، بينما يعمل التحرير والمعاينة والتحليل والنسخ والتوليد بالذكاء الاصطناعي والتصدير في المتصفح عبر WebGPU وWebCodecs وWeb Workers وOPFS وFile System Access API. تُكتب المشاريع وبيانات الوسائط المرتبطة والصور المصغرة والموجات الصوتية وأصول الذكاء الاصطناعي المولدة والنصوص المكتوبة وقطع المشاهد وذاكرات التخزين المؤقت كملفات عادية داخل مجلد مساحة عمل مختار على القرص.
التحرير والخط الزمني
- خط زمني متعدد المسارات يدعم عناصر الفيديو والصوت والنص والصورة والشكل والقناع وLottie والمقاطع المركبة.
- خطوط زمنية متعددة لكل مشروع كتسلسلات مع تبويبات، موحدة مع المقاطع المركبة.
- تحرير الصوت/الفيديو المرتبط مع أدوات التقسيم والدمج والتموج والتدحرج والانزلاق والتحريك وتمديد المعدل.
- انتقالات متمركزة حول القطع مع تغيير حجم مباشر ومحاذاة وتثبيت زمن المصدر وتراكبات معاينة.
- عناصر تحكم كتم/رؤية/قفل المسار، وشارات مزامنة مرتبطة، وسحب/دفع المسار وسير عمل إغلاق الفجوات.
- صور مصغرة لشريط الفيلم، موجات صوتية ستيريو، أدلة التقاط، علامات، رمز زمني وتراجع/إعادة.
- شاشة مصدر مع تحديد الدخول/الخروج، وجهات الترقيع، وإدراجات التحرير والاستبدال.
- قوالب مشاريع، مطابقة تلقائية للوحة القماش/معدل الإطارات من أول وسيط، اختصارات لوحة مفاتيح قابلة للتكوين.
المعاينة والتشغيل
- معاينة في الوقت الفعلي مع أدوات التحويل والقص وتثبيت الزوايا والقناع والمجموعة.
- تشغيل دقيق الإطارات عبر ساعة مخصصة وبيئة تشغيل تركيب.
- تراكبات فرك سريعة، تسخين مسبق لفك الترميز، جودة معاينة تكيفية وتسخين المصدر.
- لوحات تحرير ثنائية ورباعية لعمليات التموج والتدحرج والانزلاق والتحريك.
- نطاقات ألوان GPU: موجة، نطاق متجهات ومدرج تكراري.
- ناقل رئيسي منفصل للمشروع وحجم شاشة/جهاز منفصل.
الصوت
- حجم المقطع، تلاشي الصوت، خافتات المسار، خافت الناقل الرئيسي وعدادات LED ستيريو.
- تحويل درجة الصوت لكل مقطع بأنصاف النغمات والسنتات مع تشغيل معاينة SoundTouch.
- مراحل EQ للمقطع وEQ للمسار، بما في ذلك لوحة EQ عائمة مدمجة بستة نطاقات.
- مسارات درجة الصوت وEQ والتلاشي والحجم وصوت الانتقال محفوظة في المعاينة والتصدير.
المؤثرات والأقنعة والتركيب
- مسارات مؤثرات بصرية وتركيب تعتمد WebGPU أولاً، مع بدائل حيثما كان عمليًا.
- التمويه: غاوسي، صندوقي، حركي، شعاعي، تكبير.
- اللون: السطوع، التباين، التعريض، إزاحة الصبغة، التشبع، الحيوية، درجة الحرارة/الصبغة، المستويات، المنحنيات، عجلات الألوان، خريطة التدرج، LUT (.cube)، تدرج رمادي، بني داكن، عكس.
- التشويه: تكسير البكسلات، تقسيم RGB، دوران، موجة، انتفاخ/قرص، مشكال، مرآة، زجاج مخدد، زجاج متموج، فسيفساء زجاجية، دروستي.
- التنسيق: تظليل، حبيبات فيلم، حدة، تظليل ملصق، توهج، كشف الحواف، خطوط مسح، ألوان نصفية، فن ASCII، خلل لوني، خلل كتلي، VHS، CRT، حبر، فرز بكسلات.
- المفاتيح: مفتاح كروما مع تسامح ونعومة وكبت انسكاب.
- 25 وضع مزج بما في ذلك ضرب، شاشة، تراكب، ضوء ناعم، فرق، صبغة، تشبع، لون وإضاءة.
- أقنعة مقاطع ومسارات قلم مع تحويلات هندسية قابلة للإطارات المفتاحية.
- منتقي ألوان مع إدخال سداسي وألفا، بالإضافة إلى قطارة داخل التطبيق مع عدسة مكبرة.
الانتقالات
- انتقالات تلاشي ومسح وانزلاق وقلب ثلاثي الأبعاد ومسح ساعة وقزحية مع متغيرات اتجاهية.
- إذابة، بريق، خلل، تسرب ضوء، تكسير بكسلات، انحراف لوني وتمويه شعاعي.
- مدة قابلة للتعديل، محاذاة، تثبيت مصدر وبديل Canvas 2D للمسارات غير WebGPU.
تحريك الإطارات المفتاحية
- محرر رسوم بيانية بيزير، ورقة منشطات، عرض مقسم وتراكبات منحنيات متعددة.
- إعدادات مسبقة للتخفيف (خطي، دخول/خروج، بيزير مكعب، نابض) مع محرر معاينة مباشرة وإعدادات مسبقة مخصصة محفوظة.
- معدلات حركة إجرائية (انجراف، تمايل، تنفس، دوران، اهتزاز) تُقيَّم في وقت العرض، مع خبز بنقرة واحدة إلى إطارات مفتاحية.
- نص متحرك: تحريك نص لكل حرف ولكل كلمة ولكل سطر.
- وضع الإطار المفتاحي التلقائي، عكس المماسات، أكورديونات الخصائص واختيار التحديد.
- خصائص تحويل وقص وقناع ونص ومؤثر ولون متحركة.
الوسائط والاستيراد
- استيراد فيديوهات وصوتيات وصور وGIF وSVG ورسوم Lottie المتحركة وأصول مولدة دون نسخ النسخ الأصلية.
- تحرير رسوم Lottie المستوردة (.json و.lottie): إعادة تعيين الألوان والسمات، تحرير النص، ضبط فتحات القيمة مع معاينة مباشرة.
- فك ترميز Apple ProRes للاستيراد والمعاينة والصور المصغرة، بما في ذلك المتغيرات التي لا تستطيع المتصفحات فك ترميزها أصلاً.
- توليد وكيل، استخراج صور مصغرة، تخزين موجات صوتية مؤقتًا وإعادة ربط الوسائط.
الذكاء الاصطناعي المحلي والتحليل
- يعمل على الجهاز في المتصفح؛ لا يتم رفع أي شيء.
- نسخ على الجهاز بمحرك Parakeet (بديل Whisper) وعناصر نص تسميات مولدة.
- تسمية بالذكاء الاصطناعي مع مزودي رؤية-لغة محليين وإيقاع عينات قابل للتكوين.
- كشف المشاهد بمدرج تكراري سريع أو تحليل محتوى تكيفي دقيق الإطارات مع تحقق نموذجي اختياري.
- متصفح المشاهد للبحث في الوسائط المسمية وإعادة استخدام اللحظات المكتشفة.
- تعليقات صوتية محلية بتحويل النص إلى كلام Kokoro.
- توليد موسيقى محلي MusicGen مع إعدادات مسبقة وتقدم وإلغاء.
- ذاكرة تخزين مؤقت للنماذج المحلية وعناصر تحكم إلغاء التحميل في الإعدادات.
المشاريع والتخزين
- استمرارية مجلد مساحة العمل عبر File System Access API.
- مبدل مساحات عمل متعددة مع إدارة مساحات العمل المعروفة.
- تخزين المشاريع كملفات عادية على القرص، مع ترحيل تخزين المتصفح القديم.
- سير عمل حذف ناعم للمشروع واستعادة وإفراغ سلة المهملات وحذف دائم.
- تصدير/استيراد حزمة ZIP للمشروع مع مخططات مُتحقق منها بـZod.
- حفظ تلقائي، صور مصغرة للمشروع، عكس ذاكرة التخزين المؤقت لمساحة العمل وتنظيف الأيتام.
التصدير
- عرض داخل المتصفح عبر WebCodecs ومسارات عرض مدعومة بالعمال.
- تصدير أي تسلسل، وليس فقط الخط الزمني الرئيسي.
- حاويات الفيديو: MP4، WebM، MOV، MKV.
- ترميزات الفيديو: H.264، H.265، VP8، VP9، AV1 (حيث يوفر المتصفح مشفرًا).
- تنسيقات تصدير الصوت: MP3، AAC، WAV/PCM.
- الترجمات: إيقاف، حرق، ملف جانبي أو مسار ناعم مدمج (حسب الحاوية).
- إعدادات مسبقة للجودة من منخفضة إلى فائقة، مع فحوصات قدرات وقت التشغيل وبدائل.
البدء
المتطلبات الأساسية هي Node.js 22+ موصى به، npm 11+ ومتصفح Chromium حديث. استنسخ المستودع، شغّل npm install وnpm run dev، ثم افتح http://localhost:5173 في Chrome أو Edge أو Brave أو Arc. سير العمل هو: اختر مجلد مساحة عمل، أنشئ مشروعًا، استورد الوسائط بسحب الملفات إلى مكتبة الوسائط، اسحب المقاطع إلى الخط الزمني وحرر، ثم صدّر مباشرة من المتصفح.
دعم المتصفح
يوصى بـChrome أو Edge 113+. يعتمد FreeCut على WebGPU وWebCodecs وOPFS وFile System Access API، لذا يلزم متصفح Chromium حديث لسير العمل الكامل. قد يعطل Brave واجهة File System Access API؛ يمكن تمكينها عبر brave://flags/#file-system-access-api.
المكدس التقني
React 19 وTypeScript، Vite+ للتطوير/البناء/الفحص/التنسيق/التحقق/الاختبارات، Vite مع @vitejs/plugin-react، WebGPU للمؤثرات والتركيب والانتقالات والأقنعة والنطاقات وتسريع الذكاء الاصطناعي، WebCodecs لخطوط أنابيب المعاينة والتصدير، File System Access API وOPFS للاستمرارية وذاكرات التخزين المؤقت، Zustand مع Zundo للحالة والتراجع/الإعادة، TanStack Router للتوجيه القائم على الملفات الآمن الأنواع، Tailwind CSS 4 مع Radix UI ومكونات بأسلوب shadcn، Mediabunny لفك ترميز الوسائط والبيانات الوصفية وترميز الصوت، Transformers.js لنماذج الذكاء الاصطناعي المحلية في المتصفح، Kokoro.js لتحويل النص إلى كلام عبر WebGPU، وWeb Workers وAudioWorklets لمعالجة الوسائط خارج الخيط الرئيسي.
التطوير
معظم الأوامر هي سكربتات npm مدعومة بـvite-plus (vp): npm run dev (المنفذ 5173)، build، preview، perf، lint (Oxlint)، format (Oxfmt)، test:run، verify (بوابة كاملة تشمل فحوصات البنية والكود الميت، عقود Node بدون واجهة، انحدار Chrome بمنظومة مبنية، عمليات تحرير عامة وعرض وسائط/صوت مولدة)، headless:test وroutes. تبقى المؤثرات ذات GPU الحقيقي بوابة مشغل/إصدار صريحة لأن CI للطلبات المستضافة لا يوفر محول WebGPU محمولاً. شجرة src/ منظمة إلى features/ (وحدات واجهة مستخدم)، runtime/ (محركات التشغيل والعرض)، infrastructure/ (محولات المنصة لـGPU والتحليل والصوت والمتصفح والتخزين والصور المصغرة)، shared/ (أساسيات مستقلة عن الإطار وحالة عبر الميزات)، بالإضافة إلى app/ وcomponents/ وconfig/ وroutes/ وtypes/.
المساهمة والترخيص
الأولويات الحالية هي إصلاحات الأخطاء، ثم تحسينات الأداء للمحرر المباشر والتشغيل والتصدير، ثم الميزات الجديدة التي تمت مناقشتها أولاً. يمكن الإبلاغ عن الأخطاء عبر مشكلات GitHub مع خطوات قابلة للتكرار وإصدار المتصفح ولقطات شاشة أو تسجيلات؛ يجب أن تتضمن تقارير الأداء سير العمل وتفاصيل الوسائط المصدر وحجم المشروع ومتى يبدأ التباطؤ. تُناقش أفكار الميزات على Discord أو مناقشات GitHub قبل التنفيذ. مرخص تحت MIT.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.