PDA

Просмотр полной версии : звуковой поток обрывается только под новым флэш-плеером!


utr202920
09.05.2013, 01:40
звук подключается (на _root) как обычно: mus = new Sound(); mus.loadSound("music.mp3", true)
это давно и замечательно работало во всех версиях флэш-плеера, но на последнем флэш-плеере работать перестало !
музыка звучит, но поток обрывается при переходе на _root к другому фрейму, любому. (там есть разный код в каждом фрейме)
совершенно непонятно как исправить ситуацию. где искать?

dark256
09.05.2013, 10:55
http://www.flasher.ru/forum/showthread.php?t=198065

Аналогичное горе посетило и наши пенаты.
_root не трогал, переходов по кадрам не было, но тем не менее ПРОИГРЫВАНИЕ при потоковой загрузке по совершенно неизвестным причинам останавливалось, а сама загрузка продолжалась. После пары дней поисков было плюнуто и написано:

mus.loadSound( "music.mp3", false )

utr202920
10.05.2013, 21:18
mus.loadSound( "music.mp3", false )
– в моей ситуации не помогает. (некие деструктивные причины начинают действовать раньше загрузки файла.)
похоже, что аdobe не очень внимательно относится к пользователям AS2 и допускает ошибки.
подобные посты есть и на других форумах, но нигде пока нет позитивных решений проблемы.
думаю, проблему обойти возможно, отыскав в коде то, что вопреки спецификации языка конфликтует с потоком.
но пока это не удается.

dark256
10.05.2013, 23:08
Если не удалось ЭТО - вы явно что-то делаете не так.
Показывайте код.
Если станете показывать ФЛА - имейте ввиду, что многие его станут смотреть в формате не выше CS3....
Ну, может и не многие, но я точно 4-5-6 открывать не стану ;)

utr202920
11.05.2013, 03:33
да, действительно, загружаемый – работает.
в результате, если упростить, написал:
mus = new Sound();
mus.onLoad=function() {mus.start()};

import System.capabilities.version;
var arr:Array = System.capabilities.version.split(" ");
arr = arr[1].split(",");
stream=parseInt(arr[0],10)<11; //для плеера версии до 10 - звук потоковый / для 11 и выше – звук загружаемый

mus.loadSound('music.mp3', stream);

и это проблему почти снимает. спасибо

Добавлено через 29 часов 34 минуты
поскольку вероятно что кто-то этим кодом может воспользоваться, приведу его уточнение:

mus = new Sound();
var arr:Array = System.capabilities.version.split(" ");
arr=arr[1].split(",");
stream=!((arr[0]>10 and arr[1]>6) or arr[0]>11) //для плеера 11.7 и выше – звук загружаемый / для остальных – потоковый
if (!stream) mus.onLoad=function() {mus.start()};
mus.loadSound('music.mp3', stream);

проблема наблюдается только для плеера 11.7.700.169.