Просмотр полной версии : узнать длину стримового звука до полной загрузки
под PHP использовал библиотеку, делал запрос из swf к скрипту, лежащему на сервере, скрипт смотрел мета данные и возвращал swf'ке
Идея потоковой загрузки в том, что загружаемый поток может быть условно бесконечным. Так что, да, так как говорит farox, посчитайте на сервере и отправьте вместе со звуком, может плейлист, может ID3, если такой тег есть.
Можно длину рассчитать. До загрузки вычисляем отношение загруженных байт к общему количеству байт. Затем длину трека(загруженную на данный момент) делим на полученное значение.
Способ костыльный, но рассчитывает довольно точно
Так как вы предлагаете - может не получится, если, например, используется MP3 с переменным битрейтом. В нем нет постоянного соответсвия количество байт / длина.
спасибо за дельные советы, я пока сделал вот так
//вызываем подсчет
var dur:Number = calculateTotalTime(_sound.bytesTotal)
//степень сжатия мп3
private var rate:uint = 128;
private function calculateTotalTime(total:Number):Number
{
//1 кбит=128 бит
return total/(128*rate);
}
ну естественно это если исходить из того что файл с постоянным cbr, но для моей задачи самое то
Не проще заголовок файла прочитать и все?
http://upload.wikimedia.org/wikipedia/commons/thumb/0/01/Mp3filestructure.svg/2000px-Mp3filestructure.svg.png
//1 кбит=128 бит
опечаточка вышла)
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.