当前位置: 首页 > 知识库问答 >
问题:

AndroidExoPlayer如何听视频时长,并在每一秒钟做一些我们想做的事情?

璩涛
2023-03-14

我是流视频从服务器与ExoPlayer,我想显示特定秒的视频对话,所以我想听ExoPlayer的持续时间,并得到哪一秒是当前的第二次播放,如果它是我想要的时间比停止播放器和显示对话。由于视频是流式的,我无法获得第二个处理程序,因为视频可能停止的情况下,用户的互联网质量低,或者可能用户改变播放器搜索栏等。那么解决方案是什么呢?谢谢。

共有1个答案

谈灵均
2023-03-14

ExoPlayeer目前没有提供进度更新监听器--引用的原因是它会消耗太多的CPU来不断引发进度事件。请参阅关于ExoPlayer问题跟踪器的讨论:

  • https://github.com/google/exoplayer/issues/3980

相反,建议构建您自己的处理程序来轮询播放器,并使用player.getCurrentPosition()查询当前位置。

顺便说一句,如果你不需要停止视频,你只想在给定的时间戳显示视频中的文本,那么你也可以给你一个单独的字幕或字幕轨道。

 类似资料:
  • 问题内容: 可以说我想做一个循环或每秒打印出来的内容,例如“ Mario”。我怎样才能做到这一点?似乎找不到任何可以在任何地方教授此内容的优秀教程= P 问题答案: 您可以使用java.util.Timer。 任务是您要执行的方法,之后是直到第一次执行的时间,间隔是上述任务的两次执行之间的时间。

  • 我有一个JButton,可以让我的JTextArea可见: 在第一次单击、第三次单击、第五次单击时,。。。在JButton上,JTextArea应该出现: 在第二次单击、第四次单击、第六次单击时,。。。在JButton上,JtextArea应该消失: 帮助被大大评价!

  • 这是take II,前几周我发了帖子,我的问题被搁置,我调整了我的文本,但无法得到评论,系统关闭了原来的帖子。 服务器端:只读-服务器打开管道,然后定期检查是否有内容(即不在流末尾)并读取信息。此检查必须以轮询为基础,因为只有在轮询期间,才有有效的上下文来传递数据。。 客户端:仅写-打开管道、写入管道、关闭(Client.exe多次调用,生命周期短,下面的代码是测试代码),例如,其他一些脚本将“使

  • 我有这样的情况: 表一: 表二: 我需要把数量列在表2,使用“代码”作为关键字…谁能帮助我这个查询?我在用LibreOffice 预期结果

  • 问题内容: 我有一个运行很长时间的python脚本,我想每天早上01:00做一些事情。 我一直在查看sched模块和Timer对象,但看不到如何使用它们来实现此目的。 问题答案: 您可以这样做: 这将在第二天凌晨1点执行一个函数(例如hello_world)。 编辑: 正如@PaulMag所建议的,更一般而言,为了检测是否必须由于该月末到达而必须重置该月的某天,在此上下文中y的定义应为: 使用此修

  • 我用‘固定’使‘导航’不动。然而,如果有一个“标题”,则有一个与“标题”区域一样多的边距。在向上移动了多少‘头部’区域后,我想把它固定在那个位置。我在用“反应”所以很难找到方法。我正在自学,所以我原来知道的不多,所以我来学习一些新的东西。 null null