الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

اسأل عن استخدام ال TCP في نقل الصوت..؟

بدأه شوق المسافر في 6 سبتمبر 2010 · 2 رد · 1,145 مشاهدة · في برمجة الشبكات والتطبيقات الموزعة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم جميعاَ....

اريد الاستفسار عن استخدام بروتوكول tcp في نقل الصوت

في احد دروس الاستاذ فادي عبد القادر قال:

------------------------------------------------------------------------------------------------

يدعم بروتوكول ال TCP

– متطلبات نقل الصوت المثلى :

Stream 1 - أسلوب النقل

2 البروتوآول المستخدم لنقل الصوت يجب أن يدعم Delivered on Sequence

Voice Compression 3 – تعتمد سرعة النقل على مدى حجم الضغط المستخدم 31 بمعدل KB\S والجودة المطلوبة ويفضل في هذه الحالة أن لا تقل سرعة النقل عن8.000 آحد أدنى لجودة الصوت. KHz لا يقل عن هذه الأمور ....

المشكلة الوحيدة في هذا البروتوآول هو عدم إمكانية استخدامه لعملMulticast Conference System

وال Multicasting إذ انه من المعروف أن أي من هذه TCP ولا يدعم ال UDP من الأمور الخاصة ببروتوآول ال BroadcastingOriented بروتوآول موجه TCP الأمور وهو ما بينته في الفصل السابق، إذ يعتر الMulticast Conference لذلك لا يمكن الاعتماد عليه في حالة حاجتنا لعمل Protocolإذا الحل الأخر والوحيد هو .. Broadcasting أو في حالة البث الإذاعي Systemفي حالة حاجتنا لهذه الأمور.

--------------------------------------------------------------------------------------------------

اذا اردت استخدام بروتوكول TCP لنقل الصوت (مثلا) من جهاز الاستاذ الى جميع اجهزة الطلبة على الشبكة الواحدة (وليس شبكتين) بدون استقبال الصوت من اجهزة الطلاب يعني هنا العملية ارسال من قبل الاستاذ واستماع من قبل الطلبة ...

فهل يمكنني استخدام TCP بدون استخدام مفهوم الBroadcast ؟ مثلاIPAddress.Any في الارسال وفي الاستقبال نكتب ايبي جهاز الاستاذ؟

1
#2

السلام عليكم اخواني انا من مدة وانا انتظر الجواب ياريت حدا يجاوبني لاني محتاج طريقة ارسال الصوت من جهاز الاستاذ الى جميع اجهزة الطلاب بدون استقبال الصوت في جهاز الاستاذ وبدون وارسال الصوت من جهاز الطالب.

اي بروتوكول استعمل وكيف ستتم العملية؟ هل برودكاست اك ملتيكاست؟

انتظر جواب منكم

تحباتي للجميع

#3

وعليك السلام اخي الكريم واهلا وسهلا بك

بخصوص سؤالك عن استخدام التي سي بي لنقل الصوت فهو ممكن ويفضل استخدامه في حالة البث عبر الإنترنت من المرسل إلى المستقبل بدون المحادثة المباشرة لسبب وجود بعض الـDelay في عملية الإرسال على عكس استخدام الـUDP على أي حال في حالتك فالأفضل ان تقوم بعمل التالي:

- وجود سيرفر يقوم بتسجيل المتصلين وتخزين الـSocket الخاص بكل متصل كـObject في Arraylist

- ستكون وظيفة السيرفر استقبال البيانات (الصوت) المرسل وإعادة ارساله إلى المتصلين واحد تلو الأخر بطريقة التتابع مثلا foreach

بخصوص استفسارك الآخر فلا انصح باستخدام البرودكاست لنقل الصوت لعدة اسباب منها انه لا يمكنك تجميع Packets الصوت وفق الترتيب السليم كذلك احتمالية ضياعها اثناء الإرسال ناهيك على انها تشغل الشبكة المحلية بشكل كبير وايضا انعدام الـSecurity فيها ... اما الـMulticast فأفضل استخدامه فقط في حالة وجود RTP لتنظيم عملية التراسل وإدارة الـSession والتحكم في Jitter راجع هذا الرابط لمزيد من المعلومات

http://www.socketcoder.com/ArticleFile.aspx?index=2&ArticleID=64

ستجد ايضا في الرابط التالي مثال كامل يستخدم بروتوكول TCP في عملية الاتصال بتجاه واحد وبتجاهين Full Duplex And Half Duplex بحيث يرسل الصوت إلى كل المتصلين باستخدام الطريقة السابقة.

http://www.socketcoder.com/ArticleFile.aspx?index=2&ArticleID=70

ملاحظة: المثال يحتاج إلى تحميل Visual Studio 2010 + Silverlight 4 Tools

بالتوفيق

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…