gpt4 book ai didi

video - 在视频播放器上设置时间触发器

转载 作者:行者123 更新时间:2023-12-04 23:07:59 35 4
gpt4 key购买 nike

背景 :

每当视频以特定间隔播放时,我想在文本框中显示一些文本,例如 (00:02:00-00:04:00 "Hello there") .

仅当视频在特定间隔内播放时才应显示这些文本框。如果我倒带或将视频跳到不同的时间,则应根据当前时间是否在间隔内生成/销毁文本框。

我已经搜索了 ffplay 和 vlc 的文档以实现此功能。

我尝试过的 :

ffplay:我的策略是继续轮询 ffplay 在 STDERR 中转储的视频的当前时间,并检查当前时间是否在间隔内。

LibVLC:
LibVLC 支持异步事件,但不支持取决于视频播放时间的那种。

我的问题 :

1.是否建议继续轮询当前视频时间或设置回调/触发功能?

2.是否可以将视频的当前播放时间作为变量获取并相应地创建回调函数?

注意:我知道字幕做同样的事情,但是我希望文本在不同的窗口中。文本框应该与我使用的视频播放器分离。

最佳答案

如果您只对当前视频时间或位置感兴趣,则轮询非常好。 LibVLC 确实为 Media Player Position Changed 实现了回调。和 Media Player Time Changed但是对于非常定期执行的操作(例如每秒查询时间),将其作为异步事件处理并没有多大值(value)。

设置一个计时器以每秒查询一次(或半秒,具体取决于您想要的精度)并调用:

libvlc_time_t current = libvlc_media_player_get_time(my_player);

请注意,结果以毫秒为单位。而且您显然必须保留对您的 my_player 的引用。周围,​​但我认为你会这样做。另请注意,根据我的经验, libvlc_media_player_get_time 报告的时间可能并不总是非常精确。但是对于播放它应该没问题。

关于video - 在视频播放器上设置时间触发器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56833579/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com