Компонент FLVPlayback зависает при поиске за пределами загруженного контента
Я создаю видеоплеер на основе flex, используя компонент FLVPlayback (импортированный из Flash Pro CS3). Я перенастроил все элементы управления плеером и связал их, и все работает очень хорошо...
Однако, если вы попытаетесь выполнить поиск за пределами точки загрузки видео (используется прогрессивная загрузка), оно полностью зависнет. Вы больше не можете останавливаться, играть, искать в другом месте или что-то еще. Я понимаю, что на самом деле это не может воспроизвести точку в видео, которое не было загружено, но все это, похоже, просто перестает отвечать. Интерфейс и другие элементы все еще работают, поэтому он не разбил весь Flash Player, только компонент FLVPlayback.
Есть идеи?
1 ответ
Поэтому я отказался от попыток заставить работать обработчик поиска, встроенный в оболочку seekbar, и написал свой собственный обработчик щелчков, который проверяет, сколько загружено, и если вы пытаетесь щелкнуть дальше загруженной точки, он просто прыгает до загруженной пункт:
private function seekHandler(e:MouseEvent):void{
if(video.source){
var seekto:Number = (e.stageX-seekBar.x)/seekBar.width *100;
var loaded:Number = (video.bytesLoaded/video.bytesTotal)*100;
if(seekto > loaded){
seekto = loaded-0.5;
}
video.seekPercent(seekto);
}
}
Было бы хорошо, если бы это было исправлено в будущих версиях компонента FLVPlayback.