Бесполезное воспроизведение последовательных звуков во Flash

Я делаю вспышку, которая в основном очень простая трекер. Мой вопрос о последовательном воспроизведении и, более конкретно, о сроках.

SoundChannel-объект удобно предоставляет SoundCompleted-событие, но, опираясь на это, возникают крошечные промежутки между звуками, которые (к сожалению) делают его бесполезным.

Все, что мне удалось выкопать до сих пор, - это учебные пособия, в которых задействованы события, запускающие каждую миллисекунду, и ручное наблюдение за тиками, где начинать следующий звук. Это кажется немного хакерским и излишне ресурсным расточительным.

Есть ли лучший способ синхронизировать звук последовательно с бесщелевым воспроизведением?

flash,actionscript-3,audio,timing,cs3,

0

Ответов: 2


0

Если вы запросите текущее время звука (или оставшееся время) в миллисекундах и установите тайм-аут для этого периода и начните следующий звук в обработчике тайм-аута, это сработает? Это не то, что я пробовал и нашел надежным, но обработчики тайм-аута будут вызываться как можно ближе к прямому времени, как может управлять Flash Player (независимо от частоты кадров и т. Д.). Поэтому, если это не сработает, я не могу себе представить, что еще может сделать, если бы не была какая-то вариация оценки того, сколько MS требуется, и пытается запустить следующий звук 5 мс или что-то еще до того, конец.


0 принят

Это может сработать, но тайм-ауты не зависят от частоты кадров или вообще не полностью. Они запускают, как вы говорите, как можно ближе к заданному таймауту, но я обнаружил, что существует определенная разница в точности в зависимости от частоты кадров.

Но что касается первоначальной проблемы, я сделал некоторые исследования и сам ответил на них .

вспышка, 3-ActionScript, аудио, время, cs3,
Похожие вопросы