Я пытаюсь устранить неполадки в скруббере для пользовательского видеоплеера, и я сталкиваюсь с проблемой, когда скруббер перетаскивается после заполнения индикатора выполнения, если flv еще не загружен полностью.
Игрок здесь:
http://mindfilemultimedia.com/stage/portfolio.html
Если вы воспроизведете видео, вы увидите, что пока flv все еще загружается, когда вы перемещаете скруббер за желтую полосу прогресса в белую часть строки, видеопроигрыватель останавливается. Это происходит потому, что пользователь говорит искать часть видео, которая еще не была полностью загружена. То, что я хочу сделать, это определить, загружается ли flv, и ограничить пользователя только возможностью перетаскивать скруббер до ширины желтого индикатора выполнения. Сейчас я установил код для извлечения bytesLoaded и bytesTotal, и я хочу сказать что-то вроде (в ActionScript 3):
if (videoPlayer.bytesLoaded < videoPlayer.bytesTotal) {
var newBounds:Rectangle = new Rectangle(0, 0, (videoPlayer.bytesLoaded/videoPlayer.bytesTotal) * MovieClip(root).SeekBar.SeekProgressBar.width, 0);
MovieClip(root).SeekBar.SeekBarHandle.startDrag(false, newBounds);
}
Я ни в коем случае не человек сценария действий, так что это была моя попытка сделать то, что мне было нужно. У меня такое ощущение, что это не работает, потому что я неправильно обращаюсь к классам для индикатора выполнения и дескриптора скруббера, но я просто беру классы по умолчанию, так как панель поиска была флеш-компонентами. Ну, я могу быть совершенно не прав. Любая помощь здесь будет оценена.