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

اريد ارسال صوت من السيرفر الى الكلاينت

بدأه هرمان في 15 فبراير 2009 · 12 رد · 1,812 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

قمت بالبحث ولم اجد مثال بهذه الطريقة لا اعلم من اين ابداء ولكن ارجو التعديل على المثال المرفق

____________________________.rar

#2

بســم الله الـرحمــن الرحيــم

أخي هرمان

في الملف المرفق ستجد الأداة و مثال من تصميمي بسيط و إعذرنى إذا كان التصميم سئ لأن الأداة ليست من تصميمي و لم إجيد فهمها كلهل بالكامل .

بالمناسبة قد تجد بعض الأخطاء بالأداة .

و أى إستفسار إطرحه و بإذن الله تجد الإجابه .

و السلام ختام ...

Voice_Connection.rar

السلام على من إتبع السلام وخشي وجه ربه ذو الجلال والإكرام

#3

اشكرك اخي على الرد :

- جربت المرفق ولكن ليس المطلوب هذا .

- والادة المستخدمة للاسف عملت مرة واحدة وتعطي صوت غير واضح وبعد ذلك التزمت الصمت لا اعلم لماذا .

ارجو من الاخوة المساعدة - اكرر شكري للكابتين

#4

السلام عليكم :

بالنسبة لوضوح الصوت

هل جربت إستخدام voicewsk.cleanvoice

و بالنسبه لما قلته لم يكن المطلوب

فهل من الممكن التوضيح أكثر؟؟؟

و بالنسبة لعمل الأداة فهي تعمل مع أكثر من مليون مره حتى الأن.....

و السلام ختام.

السلام على من إتبع السلام وخشي وجه ربه ذو الجلال والإكرام

#5

يبدو ان الموضوع صعب لماذا لا اجد احد يطبق لي هذه الطريقة حسب الشرحي في البداية :

الموضوع مرة اخرى كالتالي :

سيرفر يرسل صوت الى خمسة اشخاص كل شخص على جهاز مستقل يتصلون بالسيرفر ويسمعون الصوت في نفس الوقت .

#6

أيضا لم أفهمها بشكل كامل

لكن يمكنك الربط بتلك الأداة أيضا بجعل كل عميل كسرفر voice عن طريق الأداة و تجعل السرفر الرئيسي يتصل به كعميل لكل سرفر voice أرجو أن أكون وضحت الفكره و لا تتضايق من طول فترة النقاش .

و السلام ختام.........

السلام على من إتبع السلام وخشي وجه ربه ذو الجلال والإكرام

#7

اخواني حاولت ان ارسل الصوت من الخادم الى العميل ولكن يوجد مشكلة لم اعرف سببها من السرفر أو اعميل

علماً بان المثال المرفق كان يعمل معي قبل تحويله الى قبول عدد من العملاء المتصلين بالخادم

أمل منكم المساعدة ولكم مني خالص التحية

_________.rar

#8

الموضوع مطلوب مني ضروري ارجو المساعدة

#9

المساعدة ياخوان وينكم صعب لهذه الدرجة

#10

الفزعه ياخوان ........ارجو العذره

#11

اريد حلاً .....اريد حلاً

#12

بســم الله الـرحمــن الرحيــم

السلام عليكم

إعذرنى أخي على التأخير في الرد حيث كنت مشغولا ::: و أيضا لم يعمل البرنامج معى

أعتقد أخي أن الخطأ موجود في الـ ClassModule : WaveStream_TX

في الكود

Private Function SendSoundAll(Sockets As Variant, WaveHeader As ACMSTREAMHEADER) As Long
Dim rc As Long
Dim I As Long
If (Sockets(0).State = sckConnected) Then
rc = SendSound(Sockets(0), WaveHeader)
End If
End Function

حيث كان يجب أن تستخدم جملة For , Next

كالأتى

For i=0 to Sockets.Count
If (Sockets(i).State = sckConnected) Then
rc = SendSound(Sockets(i), WaveHeader)
End If
Next

و أيضا لديك خطأ في

Private Function SendSound(Socket As Variant, acmHdr As ACMSTREAMHEADER) As Long
Dim WaveBuffer() As Byte
ReDim WaveBuffer(acmHdr.cbDstLengthUsed - 1) As Byte
Call CopyPTRtoBYTES(WaveBuffer(0), acmHdr.cbDst, acmHdr.cbDstLengthUsed)
Call Socket(0).SendData(WaveBuffer)
End Function

حيث حددت السوكيت الذى سترسل إليه الصوت مسبقا في الكود و الذى لن تستطيع الإرسال إلا إليه عبر كودك في السطر:

Call Socket(0).SendData(WaveBuffer)

و كان يجب عليك كتابة السوكيت الذى سترسل له و لكنك هنا حددت الـ index =0 أى سترسل إلى المتصل بالسوكيت 0 و أنصحك أن تكتب هذا السطر كالتالى:

Call Socket.SendData(WaveBuffer)

و تحدد السوكيت عند إستدعاء الداله كالأتى :

SendSoundAll(TCPSocket(index), acmHdr)

و أرجو أن أكون قد وفقت .

و السلام ختام ....

تم تعديل هذه المشاركة بواسطة captinflent في 22 فبراير 2009 في 09:36

السلام على من إتبع السلام وخشي وجه ربه ذو الجلال والإكرام

#13

اخي اشكرك أولاً على الرد :

لي استفسار بسيط في الخطوة الاخيرة ماذا تقصد بتحديد السوكيت

CODE
SendSoundAll(TCPSocket(index), acmHdr)

وكيف يمكن القيام بذلك ارجو التوضيح وشكراً

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

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

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

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

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