حول عمل مشغل فيديو عبر الإنترنت (خادم/عميل)
#1
السلام عليكم وروحمة الله وبركاتة

أردت أن انطلق بمشروعي الاول والجدي إن شاء الله لكني قليل الخبرة لذلك أسأل ^^


في البداية الفكرة كتالي :
1- عمل مشغل فيديو يدعم الكثير من الإمتدادات .
2- برمجة طريقة إرسال الفيديو وإستقبالة حيث سيكون البرنامج واحد تستطيع ان تعمل خادم(Server)
ويقوم الأخرين بالدخول إليك كـ عملاء(Clients) والعكس .

ما الخطوات التي ستواجهني في طريقي .. وبعض النصائح ( لا الردود الهادمه )

بعض الإستفهامات التي تدور في رئسي ..
1- كيف اضيف الكوديك التي تقوم بتشغيل الامتدادات إلى برنامج
2- كيف اقوم بإرسال الفيديو جزئياً .. إلى العملاء كي يقومو بدورهم بمشاهدتها ما تم إرسالة كما هو الحال في اليوتيوب , حيث يتم إرسال ينانات الفيديو من البداية إلى نهاية الفيديو والمستخدم يقوم بمشااهدة ما تم تحميلة حالياً

اقوم بربط البرنامجي من خلال الهاماتشي ( برنامج يعمل شبكة محلية وهمية )

وشكراً لحسن القراءة
الرد
#2
السلام عليكم
إقتباس :1- عمل مشغل فيديو يدعم الكثير من الإمتدادات .
هل ستعتمد على حلول ومكتبات جاهزة ام تبرمج كل شيئ بنفسك (شيء مثل Video Engine)
الرد
#3
افضل الجاهز .. حيث اني أطبق فكرتي فقط ( لأني سمعت ان التعامل مع الكوديك امر مرهق )

وأنت ما رئيك بماذا تنصحني ؟
الرد
#4

إقتباس :سمعت ان التعامل مع الكوديك امر مرهق
صحيح
التطور مستمر وكل يوم يظهر جديد، تحديث برنامج مشغل كل الصيغ (صوتيات/مرئيات) يحتاج على الأقل لشخص متفرغ كليا للأمر.

بالنسبة للحل الجاهز للمشغل Player فقط يمكن ان تستخدم مكتبة FFmpeg موقعها ffmpeg.org مجانية/مفتوحة المصدر ومكتوبة بC/C++
قام احد الصينيين بتغليفها لتستخدم بدلفي FFVCL لكنها تجارية موقعها delphiffmpeg.com يمكنك تجربتها، هناك أيضا صيني أخر ؟ (قد يكون نفس الشخص!) موقعه flashavconverter.com
هناك ايضا محاولات اخرى يمكن ان تبحث عن Delphi + FFmpeg

يمكن ان تستخدم MPlayer موقعه mplayerhq.hu ايضا مشروع واعد مجاني/مفتوح المصدر
وهذا مشروع قديم لواجهة MPUI لاستخدامه موقعها mpui.sourceforge.net

يمكن ان تستخدم LibVLC من مشروع VideoLan موقعها videolan.org/vlc/libvlc.html‎
يمكن ان تتفحص بعض البرامج المشابهة امثلة البرنامج الكوري KMPlayer المبرمج بدلفي (أكثر من 6 سنين) و PotPlayer لنفس المبرمج لكن بلغة السي
أيضا البرنامج الصيني QQPlayer

ان بحثت ببعض المواقع الصينية قد تجد مشاريع كاملة وجاهة فقط بحاجة لتحديث وتعديل لتحصل على مشغل كامل

ابحث أيضا عن Filter Graph وما له علاقة

من جهة اخرى عليك ان تكون قادرا على قراءة الملف قطعة قطعة chunk والتعامل معها لاظهارها/لإرسالها/أستقبالها صوت/صورة وتعاملن مع الشبكات و ما له علاقة...
للمعلومة فكرة هذا الموضوع/السؤال هي نفسها فكرة مشروع طالب فرنسي من 19 سنة والنتيجة هي ما يعرف اليوم باسم VideoLan / VLC Media Player

موضوع سابق ذو صلة
http://delphi4arab.net/forum/showthread.php?tid=5390

قبل ان انسى: فكر في من هو المستهدف/المستخدم للبرنامج وهل تستخدم دلفي فقط ؟ قرد النار FireMonkey او شيئ أخر للمحمولية...

يالتوفيق
[-] كل من 1 user says قال شكرا ل محمد عبد العزيز على المشاركة المفيدة
  • invocker
الرد
#5
ما شاء الله .. جزاك الله خير على الإفادة أخي B.M.AbdelAziZ

لدي سؤال آخر وعذرا على الازعاج

أنا لم يسبق لي ان تعاملت مع تطبيقات الانترنت (Server\Client)
ماذا استعمل مكونات Indy ? او شيء آخر لعملية الربط بين Client و Server << أنا بالفعل بدأت مع Indy 10

إقتباس : قبل ان انسى: فكر في من هو المستهدف/المستخدم للبرنامج وهل تستخدم دلفي فقط ؟ قرد النار FireMonkey او شيئ أخر للمحمولية...

انا استعمل XE4 ومتقن لأسااسيات الC++ وأساسيات بعض اللغات الآخرى ..

ماذا تقصد بالمحمولية ؟
الرد
#6
إقتباس :ماذا استعمل مكونات Indy ?
ان جربتها وارتحت لها يمكنك استعمالها الى حد ما
اعبث بها وارسل نص، صورة، ملف، صوت كملف او تدفق Stream انظر للجودة وسرعة الارسال الاستقبال...
ان كان لديك وقت حاول تجربة كل المكونات/الحلول المتوفرة/يمكن استخدامها مع دلفي، احصر الموجود، جرب ثم قارن واختر، لا تاخذ كثيرا بأراء الأخرين، تصادفك اراء متضاربة، مكون غير نافع لاحد يمكن لاخر أن يبرمج به العجب.
انظر مثلا Skype المبرمج بدلفي استخدم مكتبات تجارية من شركة خاصة لاتدعم اصلا دلفي

إقتباس :ماذا تقصد بالمحمولية ؟
المحولية = Portability
وهنا اقصد ما يحتاجه المشروع مستقبلا
الServer قد تستخدم/تحتاج جهاز به نظام أخر غير Windows مثل Linux
الClient قد يكون جهاز لوحي او هاتفي محمول وأي علبة سوداء بها شاشة ومتصلة Big Grin
الرد


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 2 ) ضيف كريم