我有一些具有多个音轨的.mp4视频,每个音轨都针对一种特定的语言。
我在stackoverflow上找到了this question,但用户未发布其解决方案。
我想知道如何从.mp4视频中选择一个音轨并播放而不会同时听到其他音轨?
我没有任何限制,好像它需要是基于Intent.ACTION_VIEW的VideoView或Activity。
最佳答案
使用MediaPlayer.selectTrack(TrackIndex);
获取轨道索引使用
findTrackIndexFor(TrackInfo.MEDIA_TRACK_TYPE_AUDIO, MediaPlayer.getTrackInfo());
private int findTrackIndexFor(int mediaTrackType, TrackInfo[] trackInfo) {
int index = -1;
for (int i = 0; i < trackInfo.length; i++) {
if (trackInfo[i].getTrackType() == mediaTrackType) {
return i;
}
}
return index;
}
能否请您为我发布该多轨视频文件。