apache-flex 带“双”进度条的视频播放器(视频加载/视频播放进度)

cgh8pdjw  于 2022-10-31  发布在  Apache
关注(0)|答案(1)|浏览(220)

我正在实现一个基于Flex 3的FLV视频播放器,我想添加一个类似于YouTube播放器的功能。
我希望进度条既能显示视频显示进度,也能显示视频加载状态。我该如何实现这个行为?
使用2个进度条叠加在一起?我也在使用Flex mx:VideoDisplay组件,我是否需要更改它?

m1m5dgzv

m1m5dgzv1#

是的,你应该把两个条放在彼此的顶部,在背景中,你放了loodingbar,在前面,你放了当前位置条。
但最后这是一个有点多的工作比它看起来使它完全功能...我会创建一个新的类实现所有的酒吧/滑块功能。
laoder只监听update(瓦尔)来设置其新的百分比值。播放栏需要一些单击和鼠标按下/鼠标移动的功能来进行搜索,并且更新功能需要再次设置,包括在用户交互后在播放器中触发搜索的事件。
然后将加载条更新绑定到播放器的progress事件。

//setting up loadingbar
player.addEventListener(ProgressEvent.PROGRESS,slider_update);

//function to update the slider
private function slider_update(E:ProgressEvent):void{
    var percentage:float = 0;
    if(E.bytesTotal != 0){
       E.bytesLoaded/E.bytesTotal
    }
    slider.update(percentage)
}

与当前播放栏几乎相同

//listens to statechanges of the player to handle updates for cur-pos

player.addEventListener(VideoEvent.PLAYHEAD_UPDATE, checkStatechange);

private function checkStatechange(E:VideoEvent):void{
    if(player.totalTime!=0){
        timeSlider.update(E.playheadTime/E.totalTime);
    };

继续绑定点击立即设置搜索-鼠标按下和移动,使滚动视频成为可能...实际上,对于鼠标按下的搜索,鼠标移动应该在舞台上监听,所以鼠标向上,否则用户必须停留在加载栏上,而搜索在大多数情况下,这是最不可能处理的;)-玩得开心}

相关问题