渲染录制和实况/流音频/视频时的时间段回调

问题描述:

伙计们!我是这个音频/视频格式/编解码器,他们的播放器,他们暴露的API等领域的完全新手。非常感谢您的耐心以及对我的这个问题的建议。渲染录制和实况/流音频/视频时的时间段回调

问题:几乎所有的音频/视频播放器都会以hh:mm:ss格式显示时间流逝信息。我希望能够注册我的回调函数 - 可以是Java/applet回调函数或Javascript回调函数 - 在每个“时间点”都会调用并运行我的自定义代码。也许这不是时间刻度,而是编解码器术语中的“帧通道”事件。也许,这些编解码器/播放器可以让你甚至指定回调的频率(每隔多少帧或几秒钟)...

其次,我希望能够为录制的内容以及直播/流媒体内容。

什么开源软件,工具,API,'概念'等我应该看?我希望能够处理最流行的格式,如flv,avi,mp3,mpeg。理想情况下,我宁愿处理Java/Javascript中的某些内容。

不确定从哪里开始。一个示例,一段代码,甚至只是我需要遵循的流程/步骤都是非常有帮助的。再次感谢。

这取决于您在哪种环境下运行以及您想要在回调中执行哪些操作。一些多媒体框架可以添加视频,字幕或音频过滤器,这些过滤器可以访问流中的各种数据。一个这样的开源框架是GStreamer。另一种是基于Java的Processing语言,但它不能直接解码流行的视频格式。我认为VLC,这当然是视频格式的开源王,也有一个可能可以满足你的需求的API。

新的HTML5 video element定义了一个timeupdate事件,该事件在播放视频时每隔15到250毫秒触发一次。可以访问currentTime属性以获取当前播放位置。也有可能manipulate the HTML5 video directly in JavaScript code

如果您只想在播放视频时进行时间回调,并且无需过滤数据,那么您可以只使用您的语言的标准计时器设施,例如, setTimeout()在JavaScript中,以视频的帧速率请求定时器回调。