Android 在流媒体播放之前,如何知道音频歌曲的持续时间?
我正在申请流音频歌曲。在自定义媒体播放器中,我必须显示该音频文件的总持续时间。 如果一首音频歌曲是SD卡,我可以使用SD卡知道它的持续时间Android 在流媒体播放之前,如何知道音频歌曲的持续时间?,android,streaming,media-player,Android,Streaming,Media Player,我正在申请流音频歌曲。在自定义媒体播放器中,我必须显示该音频文件的总持续时间。 如果一首音频歌曲是SD卡,我可以使用SD卡知道它的持续时间 MediaPlayer player; public double duration() { return player.getDuration(); } 但在我的例子中,音频文件在服务器上,所以我必须流式传输它 最好的方法是什么?我认为这将为您提供流式传输文件的长度。声明MediaPlayer mp对象之后 mp.start(
MediaPlayer player;
public double duration() {
return player.getDuration();
}
但在我的例子中,音频文件在服务器上,所以我必须流式传输它
最好的方法是什么?我认为这将为您提供流式传输文件的长度。声明MediaPlayer mp对象之后
mp.start();
totalDur=mp.getDuration();//will give you the duration in milliseconds.
如需进一步参考,请浏览以下链接:这可能会对您有所帮助:。
一旦调用prepare()以流式传输文件,相应的数据可能可用。使用下面的代码,您可以在不使用任何库的情况下获得持续时间
player = new MediaPlayer();
player.setDataSource(YOUR_URL);
player.setAudioStreamType(AudioManager.STREAM_MUSIC);
player.prepareAsync();
player.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mediaPlayer) {
seekBar.setMax(mediaPlayer.getDuration());
player.start();
}
});
@高拉夫·古普塔:请通过以下链接播放音频文件。因为他们提到了如何获取要流式传输的文件长度:选中[this][1]它可能会帮助您找到媒体文件的长度和持续时间[1]:它在android 2.3上不起作用。你知道原因是什么吗?@rachit:你能告诉我到底发生了什么吗?LogCat中是否存在任何错误或任何崩溃?