عن المشروع
NymphCast هو حل برمجي يحول الأجهزة التي تختارها إلى مصدر صوت وفيديو للتلفزيون أو مكبرات الصوت المزودة بالطاقة. يتيح بث الصوت والفيديو عبر الشبكة من جهاز عميل أو خادم وسائط، بالإضافة إلى بث الوسائط عبر الإنترنت إلى خادم NymphCast، الذي يتم التحكم فيه بواسطة جهاز عميل أو مباشرة على المستقبل. يدعم الخادم تطبيقات NymphCast (حاليًا في مرحلة المعاينة) المكتوبة بلغة AngelScript لتوسيع الوظائف، مثل دعم بروتوكولات بث الصوت والفيديو من جهات خارجية على جانب الخادم وواجهات مستخدم قابلة للتخصيص في تطبيق العميل.
يتطلب NymphCast جهاز عميل في جميع الأوضاع باستثناء وضع الواجهة الرسومية ('التلفزيون الذكي'). يعمل تطبيق الخادم (المستقبل) على الجهاز المستهدف، بينما يعمل جهاز العميل كجهاز تحكم عن بعد. يتم توفير الوظائف الأساسية للعميل من خلال مكتبة NymphCast.
## سيناريوهات الاستخدام
- **NymphCast Audio**: وضع مستقبل صوتي فقط مع ملف الإعداد `nymphcast_audio_config.ini`.
- **NymphCast Video**: وضع مستقبل صوت وفيديو مع ملف الإعداد `nymphcast_video_config.ini`.
- **NymphCast ScreenSaver**: مثل وضع الفيديو ولكن مع شاشة توقف قائمة على الصور عند عدم تشغيل المحتوى، باستخدام `nymphcast_screensaver_config.ini`.
- **NymphCast GUI**: مثل وضع الفيديو ولكن مع تمكين وضع الواجهة الرسومية المستقلة (التلفزيون الذكي) (تجريبي)، باستخدام `nymphcast_gui_config.ini`.
## منافذ الشبكة
يستخدم خادم NymphCast منفذ UDP 4004 للاكتشاف ومنفذ TCP 4004 للتشغيل. تحتاج الأنظمة التي تشغل NymphCast MediaServer أيضًا إلى منافذ UDP وTCP 4005 قابلة للوصول. تأكد من إدراج هذه المنافذ في قواعد جدار الحماية إذا كان ذلك مناسبًا.
## الميزات والحالة
- **بث الملفات** (100%): بث ملفات الوسائط من العميل إلى الخادم.
- **الترجمات والتدفقات** (75%): دعم اختيار الترجمة والتدفق؛ يدعم الترجمات النقطية المضمنة (مثل PGS). ستتم إضافة الترجمات النصية والخارجية في الإصدار v0.2.
- **البث المتعدد** (85%): تشغيل متزامن متعدد الغرف (تجريبي في v0.1).
- **MediaServer** (100%): البث من مثيلات NymphCast MediaServer.
- **بث URL** (100%): البث من عناوين URL.
- **دعم الترميز** (100%): يدعم جميع برامج الترميز المدعومة بواسطة ffmpeg.
**الميزات التجريبية:**
- **SmartTV** (75%): وضع واجهة رسومية مستقلة مع واجهة رسومية مدمجة قائمة على EmulationStation.
- **التطبيقات** (25%): تطبيقات قائمة على AngelScript مع تنفيذ واجهة سطر الأوامر وواجهة رسومية قائمة على HTML.
- **الوسائط المحلية** (25%): تشغيل الوسائط المحلية مع تنفيذ أساسي في v0.2-alpha0.
## نظام NymphCast البيئي
- **NymphCast Server**: نقطة نهاية الاستقبال للعملاء.
- **LibNymphCast**: مكتبة لتطوير عملاء NymphCast.
- **NymphCast Client**: عميل قائم على سطر الأوامر.
- **NymphCast Player**: عميل رسومي قائم على Qt وتنفيذ مرجعي لـ SDK.
- **NymphCast MediaServer**: تطبيق خادم لجعل محتوى الوسائط متاحًا للعملاء.
## دعم المنصات
تم تجميع واستخدام عميل NymphCast Player على Windows (7، 10)، Linux (x86، ARM: Arch، Debian)، Android (8+)، FreeBSD (14.1)، وHaiku (R1 Beta 5). يعمل الخادم على أي منصة تدعم سلسلة أدوات C++17 وتبعيات LibPoco وffmpeg، بما في ذلك Windows وMacOS وLinux وBSD. تشمل المنصات المختبرة x86_64 Windows وLinux وFreeBSD وHaiku وRaspberry Pi 4 (حتى 1080p بمعدل 24 إطارًا في الثانية h.264) وغيرها مع دعم متفاوت لتسريع الأجهزة.
## البدء
لبدء استخدام NymphCast، تحتاج إلى جهاز للخادم (غالبًا SBC أو نظام Linux). تتوفر الإصدارات على GitHub، مع حزم لـ FreeBSD وAlpine Linux وPostmarketOS. تتوفر أيضًا ثنائيات مجمعة مسبقًا لـ Android وWindows. يمكن بدء تشغيل ثنائي الخادم مع علامة إعداد، على سبيل المثال، `./nymphcast_server -c nymphcast_audio_config.ini`. يستمع الخادم على جميع واجهات الشبكة ويدعم خيارات مثل `-v` لإخراج الإصدار.
## البناء من المصدر
يتم توفير تعليمات البناء للخادم واللاعب في مجلد `doc/`. يحتوي المستودع على الخادم وSDK العميل ومصادر عميل NymphCast Player.
## دليل المطور
يركز التطوير على الخادم والبروتوكول. يتم تشجيع الأطراف الثالثة على المساهمة في دعم تطبيقات جانب الخادم. يتم استضافة الوثائق على موقع Nyanko.
## الترخيص
NymphCast مفتوح المصدر بالكامل بموجب ترخيص BSD ثلاثي البنود. يعتمد المشروع على التبرعات عبر Ko-Fi أو التبرع المباشر لدعم التطوير المستمر.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.