Просмотр полной версии : Прерывание mp3-потока
Здравствуйте!
Есть необходимость сделать проигрыватель для интернет-радио. Сделал. На кнопку проигрывания повесил:
on (release) {
mystream.loadSound("fail", true);
buffer = 1024;
bufferdis = 0;
mystream = new Sound();
mystream.loadSound("http://radio.bla-bla.bla:8000/stream", true);
mystream.setVolume(20);
}
Cкажу честно - понимаю не всё, что написал. Всё понятно начиная с 4 строчки. Назначение первой строчки совсем непонятно. Вторая строчка... Не нашел нигде её описания. Но, если поставить значение 0, то звук заикается. Что такое bufferdis - понятия не имею.
В результате имею то, что при минимальной паузе между композициями, плеер останавливается.
Есть ли цивилизованные варианты прекратить это безобразие?:)
klierik.
23.02.2007, 03:48
1 оформляйте код правильно. его вставляете в теги [code ][ /code]
2 у меня в подписи линк на руский хелп. там есть все ответы на ваши вопросы.
Специально для klierik:
on (release) {
mystream.loadSound("fail", true);
buffer = 1024;
bufferdis = 0;
mystream = new Sound();
mystream.loadSound("http://radio.bla-bla.bla:8000/stream", true);
mystream.setVolume(20);
}
Потрясающая отзывчивость - сколь быстро, столь и бесполезно...
Не нашел я ничего про "buffer " и "bufferdis " - не в родных доках, не в переведённых. Нет там и про целесообразность второй строчки.
Demar, между прочим, оформите ваш код в первом посте. Редактирование постов кнопкой справа.
klierik.
23.02.2007, 14:08
уверены что нет? а ето что?
Sound.loadSound()
Доступность
Flash Player 6.
Синтаксис
my_sound.loadSound(url:String, isStreaming:Boolean) : Void
Параметры
url Ссылка на MP3 файл.
isStreaming Булева величина, отображающая, потоково (true) или событийно (false) будет загружаться звук.
Возвращает
Ничего.
Описание
Метод; загружает MP3 файл в объект Sound. Вы можете использовать параметр isStreaming для потоковой загрузки файла.
Событийно-загружаемые звуки не могут быть проиграны до начала загрузки. Они управляются встроенным ActionScript классом Sound.
Потоково-загружаемые звуки проигрываются во время загрузки. Воспроизведение начинается как только полученно достаточно данных для работы декомпрессора. Для более подробной информации смотри "Работа со звуком" в Использовании Flash.
Все MP3, загруженные при помощи этого метода, кэшируются.
Пример
В следующем примере звук загружается событийно и не может проигрываться до полной загрузки:
var my_sound:Sound = new Sound();
my_sound.loadSound("song1.mp3", false);
В следующем примере звук загружается потоково:
var my_sound:Sound = new Sound();
my_sound.loadSound("song1.mp3", true);
вам был дан четкий и корректный ответ для решение вашей проблемы. и не надо тут кричать про бесполезность, если вы не умеете пользоваться хелпом ;)
уверены что нет? а ето что?
вам был дан четкий и корректный ответ для решение вашей проблемы. и не надо тут кричать про бесполезность, если вы не умеете пользоваться хелпом ;)
Абсолютно уверен. Тем не менее, спасибо за попытку помочь.
Вопрос был чуть-чуть не о том, что Вы написали. Давайте я попробую его как-то иначе сформулировать.
Есть "интернет-радио" предоставляющее несколько mp3-потоков. Беда в том, что публика очень специфическая(домохозяйки и т.п.). Люди не всегда способны правильно выбрать подходящий для их соединения поток.
Возникла идея использовать Flash-плеер. Тестировать соединение и по результатам включать посетителю тот или иной поток.
Flash - не моя специальность, хотя мы с ним периодически пересекаемся начиная с 3-ей версии. Человек, набросавший проигрыватель, к сожалению, позавчера попал в аварию и, как следствие, в Склиф. Приходится разбираться с его набросками самому.
Черновой вариант работает, ибо плеер простенький. Но, если в "эфире" появляется пауза 1-2 секунды, то плеер отваливается.
До того, как я подсмотрел у кого-то прописать buffer он еще и заикался.
Первое, что меня смутило в коде - строчка
mystream.loadSound("fail", true);
Т.е. вот этот "дьявольский план" мне не совсем понятен. Ну и не нашел я пока возможности настройки тайм-аута "отваливания" от потока.
P.S. В форумах я никогда не кричу - не тот возраст.
Прошло трое суток. Дальше требований оформлять код и цитирования справки дело не пошло. ;)
И на том спасибо.
Перед правилами форума все едины.
А за вас вашу работу делать никто не будет.
Ваше дело изучить, понять, воплотить.
А отвечать на вопросы — личное дело каждого и никто не в праве ничего ни от кого требовать.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.