2015-02-06 5 views
0

Я пишу игру для Air iOS. У меня есть аудиофайл, сохраненный в том же каталоге, что и мой .fla-файл. Вот код, я использую, чтобы играть:ActionScript 3 Ошибка при динамическом воспроизведении звука

import flash.net.URLRequest; 

var snd:Sound = new Sound(new URLRequest("507560_-BlastProcess-.mp3")); 
snd.play(0, 40); 

Это ошибка я получаю при тестировании в таял Air Debug Launcher:

[SWF] Spike%20Jungle.swf - 72668 bytes after decompression 
Error #2044: Unhandled IOErrorEvent:. text=Error #2032: Stream Error. 
    at SpikeJungle_fla::MainTimeline/frame1()[SpikeJungle_fla.MainTimeline::frame1:128] 
    at runtime::ContentPlayer/loadInitialContent() 
    at runtime::ContentPlayer/playRawContent() 
    at runtime::ContentPlayer/playContent() 
    at runtime::AppRunner/run() 
    at ADLAppEntry/run() 
    at global/runtime::ADLEntry() 
[UnloadSWF] Spike%20Jungle.swf 
Test Movie terminated. 

Как это исправить?

+0

что в строке 128 своего класса 'MainTimeLine'? – CyanAngel

+0

StreamError - это либо файл не найден, либо ограничение безопасности, либо вы пытаетесь воспроизвести файл, который не загружен полностью - не может сказать точно, возможно, нормально начать играть сразу, но я бы сначала дождался загрузчик должен запустить Event.COMPLETE и только затем воспроизвести. –

+0

@AndreiNikolaenko Я пробовал: 'import flash.events.Event; импорт flash.media.Sound; импорт flash.net.URLRequest; var s: Sound = new Sound(); s.addEventListener (Event.COMPLETE, onSoundLoaded); var req: URLRequest = новый URLRequest («HexagonForce.mp3»); s.load (req); функция onSoundLoaded (событие: событие): void { var localSound: Sound = event.target as Sound; localSound.play(); } ' , но я все равно получаю ту же ошибку. – EdwardCorrell

ответ

0

Либо нужно перекрестный домен, либо путь к файлу неверен.

Возможно, ваше приложение AIR не работает в той же папке, что и ваш mp3. Посмотрите, где хранится ваше скомпилированное приложение для воздуха, и переместите mp3 в эту папку.

http://www.judahfrangipane.com/blog/2007/02/15/error-2032-stream-error/

Вы также можете использовать SoundChannel, так что вы можете остановить звук

Смежные вопросы