MediaPlayer无法播放某些音频文件的实时流 [英] MediaPlayer not playing live stream for some audio file
本文介绍了MediaPlayer无法播放某些音频文件的实时流的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
某些音频文件的网址未在Mediaplayer中播放 这是我的代码
some audio file url not playing in mediaplayer here my code
mediaPlayer = new MediaPlayer();
if (mediaPlayer != null) {
try {
String audioUrl = Constants.AudioLink.toString().replace(" ", "%20");
mediaPlayer.setDataSource(audioUrl);
mediaPlayer.prepareAsync();
mediaPlayer.setOnErrorListener(new MediaPlayer.OnErrorListener() {
@Override
public boolean onError(MediaPlayer mediaPlayer, int i, int i1) {
Progressdialogs.getInstance().closeDialog();
Toast.makeText(AudioPlayActivity.this, "Failed to load audio", Toast.LENGTH_SHORT).show();
return false;
}
});
mediaPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mediaPlayer) {
Progressdialogs.getInstance().closeDialog();
finalTime = mediaPlayer.getDuration();
seekbar.setMax((int) finalTime);
seekbar.setClickable(false);
play();
duration.setVisibility(View.VISIBLE);
}
});
} catch (Exception e) {
e.printStackTrace();
}
}
我注意到小的音频文件容易播放,但是大的音频文件却不能播放.我也尝试使用MediaPlayer的FFmpegMediaPlayer库intead,然后播放较大的音频文件,但我的apk文件大小增加到32 MB.所以我不能使用FFmpegMediaPlayer通过url播放音频.请建议我最好的库或本机代码,以将大型音频文件作为实时流播放.
I noticed that small audio files easily played but large audio file not playing. i also try FFmpegMediaPlayer library intead of MediaPlayer then large audio file played but my apk file size increase to 32 MB. so i can't use FFmpegMediaPlayer for play audio through url. Please suggest me best library or native code for play large audio file as live stream.
预先感谢
推荐答案
我使用以下库
compile 'com.devbrackets.android:exomedia:3.1.1'
现在大文件播放正常.
使用
import com.devbrackets.android.exomedia.EMAudioPlayer;
private EMAudioPlayer mediaPlayer;
这篇关于MediaPlayer无法播放某些音频文件的实时流的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文