سؤال

أحتاج إلى تحقيق مشغل متعدد المسارات. يمكن للمستخدم تحميل مسارات متعددة ومزيج (تشغيلها معا). مشكلتي هي السماح للمستخدم بتحديد موضع بدء دقيق لكل مسار للسماح بمزامنة بينهما، شيء مثل هذا:

المسار 1: البدء في [X] ثانية.

المسار 2: البدء في [Y] ثانية.

اللعب / توقف

حيث يمكن للمستخدم تعيين x و y. لقد حاولت أن أدرك ذلك مع AS2 (باستخدام NetStream و SetInterval) و AS3 (باستخدام NetStream أو الصوت والموقت). فقط إذا قمت بتعيين نفس X و Y يتم تشغيل كلا المسارين في وقت واحد.

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

المحلول

افترض أن لديك "محرك جدول زمني يحتوي على ساعة داخلية من النوع. كل "علامة" من الساعة ستقوم بتحقق من بعض الصفيف أو المتجه الذي يحمل كائنات المسار الخاص بك ومعرفة ما إذا كان يحتوي على كائن مع بدء تشغيل علامة N في بداية الجدول الزمني. أو ربما يكون لديك أكثر كفاءة لجعل متجه في أوقات starty موجودة في ناقلات Trackobjs وتحقق من ذلك، ثم إذا تم العثور على واحد تشغيل متجه TrackObjs والحصول على كل الصوت الذي يجب بدء تشغيله في ذلك الوقت.

هنا القراد يمكن أن تكون ثوان، العاشر، مللي ثانية، أيا كان. يرى http://as3.casalib.org/docs/ org.casalib.time فصول لحلول الإطارات

مسار الفئة () {var starttime: int؛ var trackname: string؛ var filename: سلسلة؛ }

بالنسبة للتشغيل الفعلي للأصوات المختلطة المتعددة، هناك Libs مختلفة قد تفعل معظم الرفع الثقيل بالنسبة لك.

http://www.gaiaflashframework.com/wiki/index.php؟title=sound_groups.
قد يكون لهذا رمز مفيد لك، على الرغم من أنك قد تحتاج إلى تفكيكه من إطار Gaia. ربما افضل:
مات برينجلسكي فئة SoundManager http://www.reintroducing.com.
Guttershark SoundManager Class. http://codeandeavor.com/guttershark.

أيضا قد تكون هذه ذات أهمية عن جيل الصوت الديناميكي:
http://code.google.com/p/benstucki/
"FLAUDIO عبارة عن مكتبة معالجة الصوت والمعالجة في وقت تشغيل الديناميكية ل ActionScript 3"

http://code.google.com/p/popforge/
تتيح لك مكتبة الصوت Popforge AS3 إنشاء كائن Flash.Media.Media صالح. هذا يفتح وجهات نظر جديدة لتصميم الصوت مع برنامج Adobe Flash Player الحالي 9. يمكنك إنشاء مزج ومؤثرات ومشغلات عينة من أي نوع. يسمح لك فئة Audiobuffer المزودة بإنشاء تشغيل صوتي لا نهاية لها. "

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