我无法在毫秒秒范围内捕捉播放头更新事件。这是关于加载的flv电影的FLV播放。 根据文档,seek()函数寻求关键帧,它需要时间作为输入,精确度为毫秒。 我有一个称为下一帧的功能,我暂停视频并尝试寻找给定的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);
}
我的问题是
关于此的相关讨论但也没有提供任何解决方案
How to jump to a non-keyframe in a flv player
更新: 即使使用netstream.seek(),每次连续调用函数都不会显示video.playheadtime的变化。它的工作方式与video.seek()的工作方式相同。
video.playheadtime=0.1
这种分配也不能使播放头属性更改/更新。
我们如何实现快进/快退功能?
答案 0 :(得分:0)
检查flv元数据是否有canseekontime = false
还要检查NetStream.seek(12.222/*milliseconds/1000*/)
是否适用于同一个flv