【问题标题】:MediaPlayer not playing live stream for some audio fileMediaPlayer 不为某些音频文件播放实时流
【发布时间】:2017-04-14 10:51:29
【问题描述】:

某些音频文件 url 未在 mediaplayer 中播放 这是我的代码

  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();
        }
    }

我注意到小音频文件很容易播放,但大音频文件无法播放。我还尝试使用 FFmpegMediaPlayer 库而不是 MediaPlayer,然后播放大型音频文件,但我的 apk 文件大小增加到 32 MB。所以我不能使用 FFmpegMediaPlayer 通过 url 播放音频。请建议我将大型音频文件作为直播流播放的最佳库或本机代码。

提前致谢

【问题讨论】:

  • 尝试使用 ExoPlayer:- github.com/google/ExoPlayer
  • 尝试设置 mMediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);在prepareAsync()之前
  • @AbhayBohra 我试过但没用
  • @Bhavnik ExoPlayer 也无法正常工作

标签: android media-player


【解决方案1】:

我使用以下库

compile 'com.devbrackets.android:exomedia:3.1.1'

现在大文件播放完美。

使用

 import com.devbrackets.android.exomedia.EMAudioPlayer;
 private EMAudioPlayer mediaPlayer;

【讨论】:

  • 好的,它甚至可以在缓慢的互联网连接上正常工作吗???你试过了吗?
  • 好的,感谢您提供的信息,实际上我也在开发实时音频流应用程序,当应用程序在慢速互联网连接的情况下运行时需要更多时间,我没有为此使用任何库
  • 我也没有使用任何库来播放直播,但面临一些关键问题,这就是我在 stackoverflow 上发布问题的原因。但最后我得到了很好的解决方案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-05-15
  • 1970-01-01
  • 2013-01-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多