尝试从流播放时MediaPlayer错误

时间:2012-10-21 06:55:46

标签: android android-mediaplayer

有人知道第二个参数对MediaPlayer中的此错误(1,-2147483648)意味着什么?尝试播放网址流中的音频时,我会不断收到它。我尝试从扩展BaseExpandableListAdapter的类中播放它,如果重要的话。我已经审核了这篇文章Android MediaPlayer error: MediaPlayer error(1, -2147483648) on Stream from internet,但所有答案都涉及流支持问题。在我的情况下,它不是流支持问题,因为我能够从同一个流播放音频,但只使用不同的类。这是我用来玩的方法:

private void startPlaying(String fileName) {
    mediaPlayer = new MediaPlayer();

    try {
        if (fileInputStream != null) {  // Read a file from a fileInputStream from a filesystem (EXTERNAL OR INTERNAL storage)
            mediaPlayer.setDataSource(fileInputStream.getFD());
            Log.d("MediaPlayer is playing", "from device");

        } else {
    //      mediaPlayer = new MediaPlayer();
            mediaPlayer.setDataSource(getFilePath());   // Read a file from a url
            Log.d("MediaPlayer is playing", "from stream");             
        }
        mediaPlayer.prepare();
        mediaPlayer.start();
        mediaPlayer.setOnCompletionListener(new CompletionListener());


    } catch (IOException e) {
        Log.e(LOG_TAG, "prepare() failed");
    }
}

1 个答案:

答案 0 :(得分:2)

在这种情况下,错误通常是其中之一:

  1. 文件路径有误。找到了错误的目录或Url或Uri。
  2. 媒体文件错误,格式不兼容。
  3. 缺少权限
  4. 这是一个很好的博客,概述了这些情况以及如何解决这些问题:

    http://www.weston-fl.com/blog/?p=2988

    另见本帖:

    Android mediaplayer MediaPlayer(658): error (1, -2147483648)