Я создаю базовый MP3-плеер в ActionScript 3. У меня есть базовый индикатор выполнения, который показывает, сколько песни проиграно. Прогресс рассчитывается как десятичный процент, нормализованный между 0 и 1, следующим образом:
var progress:Number = channel.position / sound.length;
Проблема в том, что звук все еще загружается / буферизируется. Длина звука неверна. Это заставляет мой индикатор выполнения пропускать и даже перемещаться назад, пока звук полностью не загрузится и длина звука не изменится.
Как лучше всего определить окончательную длину звукового объекта, который все еще загружается?