Android原生视频播放带字幕 [英] Android Native Video player with subtitles

查看:1318
本文介绍了Android原生视频播放带字幕的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我目前正在开发一个视频播放器为Android。我创建了一个简单的TextView,显示当前字幕。

I'm currently developing a video player for android. I've created a simple textview that shows the current subtitle.

的问题是:的MediaPlayer getCurrentPosition()方法只给我时间以秒为单位。我需要以毫秒为单位的值正确同步与电影的字幕。

The problem is: MediaPlayer getCurrentPosition() method only gives me time in seconds. And I need that value in milliseconds to correctly synchronize the subtitle with the movie.

在getCurrentPosition应该给我以毫秒为单位的时间,但它给在几秒钟内* 1000的时间(以000每一个数字结束)。

The getCurrentPosition is supposed to give me the time in milliseconds, but it gives the time in seconds*1000 (every number ends with "000").

  1. 你知不知道这样做的更好的办法?
  2. 如何获得以毫秒为单位的时间?
  3. 在生成事件恰好在第二(000ms)的时间也将正常工作。

有什么建议?

推荐答案

在万一有人需要,我做我的解决方案。

In case anyone needs, I did my solution.

我公司开发的字幕模块。 为了得到准确的毫秒,我做了一个同步的系统和播放器的定时器。

I developed the subtitles module. To get the accurate milliseconds, I made a synchronizer for system and player timers.

每20秒的视频播放我做的这个程序:

Every 20 seconds of video playback I do this procedure:

  1. 询问媒体播放器的当前秒(有s秒)
  2. 询问媒体播放器的当前秒,直到结果为s + 1(S0)
  3. 获取系统时间(毫秒),该时间(M0)

现在,如果我想在当前电影毫秒:

Now, if I want the current movie milliseconds:

  1. 获取当前系统时间(millisecons)(M1)
  2. 在电影真正的时间是:S0 +(M1-M0)

易,并导致同步字幕;)

Easy, and resulted in synchronized subtitles ;)

这篇关于Android原生视频播放带字幕的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆