MediaPlayer无法播放某些音频文件的实时流 [英] MediaPlayer not playing live stream for some audio file

查看:181
本文介绍了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屋!

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