我无法捕捉毫秒范围内的播放头更新事件。这与加载的 flv 电影的 FLV 播放有关。根据文档, seek() 函数寻找关键帧,它需要时间作为输入,精度为毫秒。我有一个名为 next frame 的函数,我在其中暂停视频并尝试寻找给定的 playheadTime
function onNextFrame(event:Event)
{
if (video1.playing)
{
video1.stop();
}
playHeadTime=Number(playHeadTime.toFixed(2));
trace("Calling nextFrame :::",playHeadTime);
trace(" Before seek ",video1.playheadTime);
video1.seek(playHeadTime);
playHeadTime += 0.1;
}
我还有一个搜索事件,它不会为每次搜索更新,而是仅在 flv 视频中出现关键帧时更新
function onseeked(event:Event)
{
trace("seeked",video1.playheadTime);
}
我还有一个播放头更新事件来跟踪播放头的移动,但这不会在使用下一帧功能时更新。它仅在视频正常播放时才有效。
video1.playheadUpdateInterval = 30;
video1.seekToPrevOffset = 0.01;
video1.addEventListener(VideoEvent.SEEKED,onseeked);
video1.addEventListener(VideoEvent.PLAYHEAD_UPDATE,onPlayHeadUpdate);
function onseeked(event:Event)
{
trace("seeked",video1.playheadTime);
}
我的问题是
- 当视频暂停/停止并搜索一段时间时,如何以毫秒精度更新播放头。
- 当搜索似乎仅适用于关键帧时,我如何首先更新播放头。我如何获得非关键帧时间的搜索?
关于这个但也没有提供任何解决方案的相关讨论是
更新:即使使用 netstream.seek(),对函数的每次连续调用也不会显示 video.playheadtime 的变化。它的工作方式与 video.seek() 相同。
video.playheadtime=0.1
这种分配也无法使播放头属性更改/更新。
我们如何实现快进/快退动作?