我知道在安卓系统中存在着制作视频\音频播放器的特殊类-- MediaPlayer
。
是否有任何内置的方式添加字幕播放视频?
我看过文档,但没有找到字幕的方法。
发布于 2019-12-09 05:47:59
是的,在视频播放器addTimedTextSource中有添加字幕的方法
try {
mediaPlayer.addTimedTextSource(subTitleSrc, MediaPlayer.MEDIA_MIMETYPE_TEXT_SUBRIP);
} catch (IOException e) {
e.printStackTrace();
}
int textTrackIndex = findTrackIndexFor(
mediaPlayer.getTrackInfo());
Log.i("Subtitle Track index : ", "After add :: " + textTrackIndex);
if (textTrackIndex >= 0) {
mediaPlayer.selectTrack(textTrackIndex);
} else {
Log.w("test", "Cannot find text track!");
}
mediaPlayer.setOnTimedTextListener(new MediaPlayer.OnTimedTextListener() {
@Override
public void onTimedText(final MediaPlayer mediaPlayer, final TimedText timedText) {
if (timedText != null) {
Log.d("test", "subtitle: " + timedText.getText());
tv_subtitle.setText(timedText.getText());
}
}
});
这里mediaPlayer是类的对象和字幕文件的subTitleSrc路径.
https://stackoverflow.com/questions/46267130
复制相似问题