علامة الصوت ليتم الاحتفاظ بها في الذاكرة. Avaudioplayer؟ أنظمة؟ الصوت الأساسي؟

StackOverflow https://stackoverflow.com/questions/3736063

سؤال

أحاول تشغيل ملف صوتي صغير جدًا - يبلغ طوله 0.05 ثانية تقريبًا ، وهو ملف .wav غير مضغوط.

rgiht الآن ، أنا أستخدم AVAudioPlayer لتشغيل الصوت.

أنوي تشغيل الصوت بسرعة عالية إلى جانب الدوار ، وهو السعر الصحيح أو عجلة الحظ. إذا قمت بتثبيت AVAudioPlayer مع عدد حلقة 100 ، فإنه يلعب بالفعل الصوت بسرعة كبيرة كما أتوقع.

إذا قمت بتنفيذ [audioPlayer play] على كل "علامة" من الدوار ، ومع ذلك ، فإن الصوت تخلف بشكل رهيب. أظن أنه ، على عكس تحديد عدد حلقة عالية ، [audioPlayer play] يتطلب الإعداد الكامل والدموع لذاكرة مقطع الصوت لكل تشغيل.

هل هناك أي طريقة لإجبار المقطع على البقاء في الذاكرة لمدة أطول؟ إنه صوت متكرر للغاية ، وعلى هذا النحو سيكون على ما يرام أيضًا مع إبقائه أثناء تشغيل التطبيق بأكمله.

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

المحلول

إذا كنت تعتمد على توقيت أكثر دقة ، فقد ترغب في محاولة استخدام أحد واجهات برمجة تطبيقات الصوت الأخرى. وحدة الصوت Remoteio معقدة ، ولكنها تتيح التوقيت الأكثر دقة لتشغيل الأصوات غير المضغوطة. قوائم الانتظار والمنفتح والصوت هي خياران آخران.

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