PDA

Просмотр полной версии : Перемотка звука


__i
11.11.2005, 15:03
На сколько я читал хелп то я понял, что звук загружены объектом Sound нельзя перемотать на произвольную позицию, это так ? или можно? если можно то подскажите как.

motor4ik
11.11.2005, 15:05
snd.start("тут значение с которого хочешь начать проигрывать", loop)

__i
11.11.2005, 15:06
На сколько я читал хелп то я понял, что звук загружены объектом Sound нельзя перемотать на произвольную позицию, это так ? или можно? если можно то подскажите как.

какой же я тормоз !!!!! Sound.start(OFFSET !!!!, loop) - все считаю тему закрытой %) ну или жду различных советов %))

Afon
06.12.2007, 15:34
А у меня такой вопрос:
Загружаю звук, рисуется прогресс загрузки, играется, все ок.
Перемотка осуществлена таким же способом, как и описан выше.

НО, Если попытаться перемотать вперед в то время как звук еще не до конца догружен (но уже играет), то воспроизведение оного останавливается и возобновляется с указаного места только после полной загрузки файла МП3.
То есть, если слушатель решил промотать чуть вперед композицию, которая еще не полностью загрузилась, то у него это не получится без прерывания (длительность которого зависит от размера файла и скорости соединения)

Скажите, пожалуйста, это возможно исправить?

iNils
06.12.2007, 15:36
Что исправить?

Afon
06.12.2007, 15:50
вот примерный код:

sound = new Sound();
sound.loadSound("http://taiwan.ru/presentation2/music/sound5.mp3?rnd="+random(150), true);
_root.onEnterFrame=function(){
trace ("loaded "+sound.getBytesLoaded()+" from "+sound.getBytesTotal());
if (sound.getBytesLoaded()==sound.getBytesTotal()){
delete _root.onEnterFrame;
}
}
pauseInterval=setInterval(function(){
sound.start(sound.duration/2);
clearInterval(pauseInterval);
},1000);

При запуске начинает проигрываться музыкальный файл. Потом перематываем его на половину от загруженного времени и он останавливает свое проигрывание. Возобновляет только после полной загрузки.

Можно ли сделать так, чтобы он не приостанавливался, или это такой глюк флэша?

iNils
06.12.2007, 15:51
Ну как же он ене приостановится, когда вы пытаетесь проиграть то, что еще не загрузилось?

Afon
06.12.2007, 16:00
да, поспешил, необходимо же в секундах задавать, а не в миллисекундах,
НО:
sound.start(sound.duration/2/1000);
приводит к такому же результату.

а sound.duration - время музыкального файла в миллисекундах, но не всего файла, а именно загруженной части

Afon
06.12.2007, 17:34
Все, проблема решилась, когда все это оказалось опробовано через интернет.
То есть: локально глюк был, а после вверстывания и просмотра в интернете - пропал

Спасибо.