سؤال

لدي الخادم الذي يرسل البيانات عبر مأخذ توصيل البيانات wav 'الملف'.أنا يمكن بسهولة كتابة البيانات إلى القرص ومن ثم تشغيله في WMP, ولكن ليس لدي أي فكرة كيف يمكن أن تقوم به كما قرأت من المقبس.هل من الممكن ؟

مكافأة السؤال:كيف لي أن أفعل ذلك إذا كان تيار كان في mp3 أو تنسيق ؟

هذا هو ويندوز بلغة C++.

هل كانت مفيدة؟

المحلول

لأنك قلت WMP, أفترض السؤال ينطبق على محاولة تشغيل ملف صوتي على جهاز ويندوز.إن لم يكن هذا الجواب ليس ذات الصلة.

ما تريد القيام به ليست تافهة.هناك مقالة جيدة هنا على رمز المشروع الذي يصف ويندوز الصوت نموذج.فهو يصف كيفية إعداد جهاز الصوت وكيفية تدفق البيانات في الجهاز للتشغيل.أنت "ببساطة" تحتاج إلى توفير البيانات القادمة من مأخذ وكذلك بيانات عن تشغيل المخازن المؤقتة.ولكن حيث ان جميع صعبة العمل.عليك أن تكون على يقين من أن

  • لديك ما يكفي من البيانات لبدء التشغيل
  • التعامل مع هذه القضية عندما مأخذ جوعا البيانات لديك شيء أن ترسل إلى تشغيل المخزن المؤقت
  • كنت قادرا على قراءة البيانات من المقبس مع ما يكفي من السرعة للحفاظ على تشغيل مخازن كاملة

انها ممارسة مثيرة للاهتمام.ولكن صعبة.

نصائح أخرى

مارك هو محق بشأن مشكلة صعبة.قد يكون أقل صعبة إذا كنت تستخدم دايركت بدلا من waveOut. وهنا مقال على تدفق موجة الملفات من القرص:المتدفقة من الشبكة هو أساسا نفس العملية.تأكد من جمع ما يكفي من البيانات من الشبكة قبل البدء - أنت تريد أكثر من 2 مخازن يذكر المقال.

حتى أقل من ذلك ستكون صعبة FMOD.من أسئلة وأجوبة:

تعزيز الميزات الإنترنت

  • الإنترنت تدفق الصوت.مخصص الإنترنت تدفق التعليمات البرمجية المضمنة التي يسمح سلس شوتكاست, يسكاست و http تدفق الدعم.
  • القدرة على التحميل.تأثير جانبي FMOD وحدات نظام الملفات الذي يدعم ملفات الشبكة ، حتى ثابت عينات يمكن تحميلها من الإنترنت.

دعم تنسيق الملف:FMOD حاليا يدعم مجموعة واسعة من صيغ الملفات الصوتية.قائمة جزئية:

  • MP3 (MPEG I/II طبقة 3, بما في ذلك VBR الدعم)
  • OGG - (فوربيس) تنسيق
  • WAV (Microsoft Wave files, inlcluding مضغوط wavs.PCM, MP3 و IMA ADPCM compressed wav

مارك هو محق بشأن مشكلة صعبة.على waveOutXXXX API القديمة (ما قبل ويندوز 95) و يتطلب أكثر عرضة للخطأ الترميز مما كنت أعتقد.سيكون لديك الوقت أسهل التفاعل مع API في C++ من C#.فقط تأكد من أن هذا هو ما كنت حقا تريد القيام به.

إذا كان الخاص بك ستريم بعض شكل آخر من ملف WAV البيانات (مثل MP3 أو WMA), سيكون لديك لأداء خطوة إضافية من فك البيانات إلى تنسيق WAV و اللعب مع waveOutXXXX API.العثور حسن عنصر للقيام MP3 فك هو اصعب مما كنت تتوقع - أعتقد أن هذا هو ذات الصلة إلى فراونهوفر الترخيص الوضع (كنت من المفترض أن تدفع لهم إذا كنت تستخدم MP3 مدونة في أي حال من الأحوال).

أني سأجد الجاهزة المنتج للقيام بذلك, إلا إذا كنت تريد تجربة التعلم.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top