sound ByteArray ----> Звуковой объект - PullRequest
2 голосов
/ 02 декабря 2011

У меня есть byteArray записанного звука.

Но как я могу передать данные ByteArray обратно в реальный объект Sound?

Я знаю, что могу передать ByteArray в SampleDataEvent.Слушатель SAMPLE_DATA, но таким образом мне нужно было бы сохранять необработанный ByteArray и передавать его каждый раз, когда воспроизводится звук ... но я бы предпочел, чтобы в конце концов реальный объект Sound работал с

->Мне нужна обратная функция Sound.extract(ByteArray, ...)!

Ответы [ 2 ]

2 голосов
/ 02 декабря 2011

Проверяли ли вы эту функцию звука в Flash Player 11?

http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/media/Sound.html#loadCompressedDataFromByteArray%28%29

Вы можете напрямую загрузить byteArray в Sound Object.

0 голосов
/ 02 декабря 2011

Документы на Sound говорят:

В Flash Player 10 и более поздних версиях и AIR 1.5 и более поздних версиях также можно использовать этот класс для работы со звуком, который генерируется динамически. В этом В этом случае объект Sound использует функцию, назначенную для sampleData. обработчик событий для опроса звуковых данных. Звук воспроизводится как есть извлекается из объекта ByteArray, который вы заполняете звуковыми данными. Вы можете использовать Sound.extract () для извлечения звуковых данных из объекта Sound, после чего вы можете манипулировать им перед записью обратно в поток для воспроизведения.

Я не вижу другого интерфейса для создания Sound объекта из ByteArray. Вы можете написать свой собственный класс, реализующий Sound, и позволить этому классу абстрактно воспроизводить ByteArray, но я не вижу никакого собственного способа воспроизведения байтов напрямую, кроме метода SAMPLE_DATA.

...