Actionscript 3 AS3:根据播放的视频流定期调用外部函数

Actionscript 3 AS3:根据播放的视频流定期调用外部函数,actionscript-3,callback,video-streaming,netstream,Actionscript 3,Callback,Video Streaming,Netstream,我实现了一个flex应用程序来播放来自Red5媒体服务器的传入视频流 private function playStream(streamName:String, offset:int):void { stream = new NetStream(connection); stream.play(streamName + ".flv", offset); var streamVideo:Video = new Video(); streamVideo.attachNetStrea

我实现了一个flex应用程序来播放来自Red5媒体服务器的传入视频流

private function playStream(streamName:String, offset:int):void {
  stream = new NetStream(connection);
  stream.play(streamName + ".flv", offset);
  var streamVideo:Video = new Video();
  streamVideo.attachNetStream(stream);
  display.addChild(streamVideo); }
playStream方法从偏移参数定义的位置播放给定流。现在我想根据播放的视频流更新我的页面内容。或者更具体地说,我想调用actionscript方法,在视频中每分钟之后更新内容。出于这个原因,我应该使用定时器吗


致意

是的,您需要使用一个
计时器
对象。但不要使用
计时器
来确定用户在播放视频时的位置。您应该改用
NetStream
的属性

您还应该在
playStream()
方法中为
NetStatusEvent
添加事件侦听器。特别是,您希望检查此事件的属性(技术上是
info.code
属性)。这有几个有用的消息,您需要使用它们来了解:视频播放何时开始/停止/暂停,用户何时执行搜索,等等。这样,当用户与视频播放器交互时,您可以管理
计时器
,并高效地更新UI

下面是
NetStatusEvent
上的一些相关代码。但是查看完整的列表,你可能会发现其他人会帮助你

  • NetStream.Pause.Notify(用户暂停播放,根据需要在此处启动/停止计时器)
  • NetStream.Play.Start(播放已开始,启动计时器)
  • NetStream.Play.Stop(播放停止,停止计时器)
  • NetStream.Seek.Notify(用户搜索到新点,更新UI)