задержка между двумя звуками во flash

#flash

#вспышка

Вопрос:

у меня проблема со звуками во flash. я надеюсь, что кто-нибудь может помочь.

задача: я хочу создать звуковую последовательность. на временной шкале есть 8 предопределенных точек начала звучания. для каждой начальной точки пользователь может выбрать, какой звук воспроизводится (выпадающее меню).

когда пользователь сделал свой выбор для всех 8 тактов. actionscript должен собрать эту информацию и создать плавную последовательность из этих 8 звуков. затем пользователю будет доступна кнопка «воспроизвести» для запуска последовательности. звуки не обязательно синхронизировать с кнопкой или около того. у actionscript есть время, чтобы собрать последовательность вместе.

проблема: когда я помещаю два звука непосредственно один за другим в видеоролик, между звуками нет задержки, что именно то, что я хочу, но я не могу контролировать, какой звук воспроизводится через actionscript.

когда я использую actionscript, между звуками возникает задержка. вот что я пробовал с as. это помещается в кадр, где должен начинаться sound2

если (_global.Sound2 == «Пианино» { var SoundA:Sound = новый звук (); SoundA.attachSound(«Пианино.mp3»); SoundA.start(); }

результирующая задержка не всегда одинакова. когда я публикую SWF-файл несколько раз, задержка каждый раз разная.

я использую flash 8

вопрос: есть ли решение во flash? если нет: возможно ли экспортировать список воспроизведения в другую программу, где для пользовательских настроек a используется последовательность без пробелов между звуками?

заранее спасибо, Марк

Ответ №1:

Задержка, с которой вы сталкиваетесь, может быть вызвана данными заголовка, которые присутствуют в файлах mp3. Вы могли бы пропустить эту часть, выполнив sound.start(skip); где ‘skip’ — это количество секунд, которое вам нужно пропустить (должно хватить числа, подобного 0.6).
Единственная странность заключается в том, что вы говорите, что задержка не всегда одинакова, я бы не знал, как это исправить.

Комментарии:

1. но я использую файлы wav. я также не конвертирую в mp3 во flash. странно то, что когда я помещаю два звука в видеоролик один за другим, задержки нет. как только я использую actionscript, появляется задержка.

2. вы используете wavs? В вашем коде явно указано «Piano.mp3». Flash не может воспроизводить файлы wav, поэтому он выполнит сжатие mp3 за вас.

3. я пробовал как wav, так и mp3. я переключился на cs5 с as3 и использую: var mysound:Sound = new piano(); MySound.play(); это не меняет проблему. если я помещу звуки непосредственно во временную строку и синхронизирую их с «потоком», все будет в порядке. если я использую «событие» для синхронизации, между звуками возникает разрыв. то же самое с as3. я искал в Интернете, но не нашел ответа на этот вопрос. должно быть, это распространенная проблема. я был бы признателен за любую подсказку. могу ли я использовать синхронизацию «stream» в as3?