![]() |
|
||||||||||
|
|||||
|
Вопрос первый:
- Можно ли как небудь _soundbuftime = 20 подвязать не к времени а к % загрузки, допустим 10% загрузилось и пошло воспроизведение, ведь у всех разная скорость интернета! кому то и 60 секунд будет мало, а кому и 5 много. Вопрос второй: - Можно ли отследить находиться звук в процессе буферизации, или играет, если прошла 10 сек. буферизация звук начал играть (надо отследить что он начал играть), потом звук догнал загрузку и опять остановился буферизироваться (тоже надо отследить), потом опять пошел и т.д. Спасибо ![]()
__________________
ОСТОРОЖНО!!! Нестандартное мышление |
|
|||||
|
Banned
[+1 08.05.08]
[+4 14.04.08] [+1.3 02.05.08] Регистрация: Oct 2006
Адрес: кагбэ Киеф!!1
Сообщений: 1,473
|
Вопрос №1:
|
|
|||||
|
Уточнение.
20 сек - это когда в буфере 20 секунд звука загрузилось??? или по прошествии 20 секунд начнется воспроизведение?? -ну вообщем я и сам дагодался. спасибо что вывели меня из заблуждения. ![]() ВОПРОС №2 в силе!!!
__________________
ОСТОРОЖНО!!! Нестандартное мышление Последний раз редактировалось etc; 27.08.2007 в 02:34. |
|
|||||
|
Регистрация: Oct 2007
Сообщений: 8
|
Люди добрые а может подскажите как к этому коду еще прикрутить визуальную полоску на которой будет обозначено сколько чего загрузилось и проигралось? Очень нужно, во Flash профан.
|
|
|||||
|
Ветеран форума
Регистрация: Jul 2006
Адрес: Грузия, Тбилиси
Сообщений: 2,675
|
Видимо на вопрос ответ уже найден но…отвечу:
1. Если нужны проценты то можно считывать из тагов длину дорожки и затем высчитать 20 или сколько нужно процентов от общей длины и буфтайм ставить в полученный результат. 2. position за кол-во миллисекунд уже проигранных, можно проверять это значение, если на протяжении нескольких секунд оно не обновлялось значит звук буферезируется. stutsm, так как в хелпе в коде ошибка выложу сюда, но на будущее стоит заглядывать в него. var pb_height:Number = 10;
var pb_width:Number = 100;
var pb:MovieClip = this.createEmptyMovieClip("progressBar_mc", this.getNextHighestDepth());
pb.createEmptyMovieClip("bar_mc", pb.getNextHighestDepth());
pb.createEmptyMovieClip("vBar_mc", pb.getNextHighestDepth());
pb.createEmptyMovieClip("stroke_mc", pb.getNextHighestDepth());
pb.createTextField("pos_txt", pb.getNextHighestDepth(), 0, pb_height, pb_width, 22);
pb._x = 100;
pb._y = 100;
with (pb.bar_mc) {
beginFill(0x00FF00);
moveTo(0, 0);
lineTo(pb_width, 0);
lineTo(pb_width, pb_height);
lineTo(0, pb_height);
lineTo(0, 0);
endFill();
_xscale = 0;
}
with (pb.vBar_mc) {
lineStyle(1, 0x000000);
moveTo(0, 0);
lineTo(0, pb_height);
}
with (pb.stroke_mc) {
lineStyle(3, 0x000000);
moveTo(0, 0);
lineTo(pb_width, 0);
lineTo(pb_width, pb_height);
lineTo(0, pb_height);
lineTo(0, 0);
}
var my_interval:Number;
var my_sound:Sound = new Sound();
my_sound.onLoad = function(success:Boolean) {
if (success) {
trace("sound loaded");
}
};
my_sound.onSoundComplete = function() {
clearInterval(my_interval);
trace("Cleared interval");
}
my_sound.loadSound("song3.mp3", true);
my_interval = setInterval(updateProgressBar, 100, my_sound);
function updateProgressBar(the_sound:Sound):Void {
var pos:Number = Math.round(the_sound.position / the_sound.duration * 100);
pb.bar_mc._xscale = pos;
pb.vBar_mc._x = pb.bar_mc._width;
pb.pos_txt.text = pos+"%";
}
|
|
|||||
|
Регистрация: Oct 2007
Сообщений: 8
|
Спасибо большое.
|
![]() |
![]() |
Часовой пояс GMT +4, время: 05:15. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|