首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >MediaPlayer:播放歌曲时准备失败状态0x1错误

MediaPlayer:播放歌曲时准备失败状态0x1错误
EN

Stack Overflow用户
提问于 2013-10-31 13:52:14
回答 1查看 6.1K关注 0票数 0

我对在我的android应用程序中播放一些歌曲有问题。下面是我创建MadiaPlayer和设置数据源的测试代码:

代码语言:javascript
运行
复制
mediaPlayer = new MediaPlayer();
mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
mediaPlayer.setOnPreparedListener(this);
mediaPlayer.setOnCompletionListener(this);
mediaPlayer.setOnErrorListener(this);
mediaPlayer.setDataSource("http://streaming.ibroadcast.com/?file=MjA1MTIyMS0xMDA1NDQ1NC01MDYxNjY5LTEwMDAwMDQ=");  
try {
   mediaPlayer.prepare();
} catch (Exception ex) {
   Log.e(Constants.LOG_TAG, ex.getMessage(), ex);
}

我在mediaPlayer.prepare()上看到这个

代码语言:javascript
运行
复制
10-31 15:41:27.130: ERROR/NuCachedSource2(174): source returned error -32, 0 retries left
10-31 15:41:34.388: ERROR/NuCachedSource2(174): source returned error -32, 0 retries left
10-31 15:41:37.371: ERROR/MediaPlayer(5360): error (1, -2147483648)
10-31 15:41:37.381: ERROR/log_tag (5360): Prepare failed.: status=0x1
    java.io.IOException: Prepare failed.: status=0x1
    at android.media.MediaPlayer.prepare(Native Method)

我试着用这个代码流了一堆歌,这个问题只发生在三到四首歌上,但是这首歌是100%可复制的。更重要的是,如果我下载这首歌曲到SD卡,并从那里播放它没有任何错误。我还可以使用浏览器进行流。所有歌曲都有mp3格式,服务器响应包含如下标题:

代码语言:javascript
运行
复制
Accept-Ranges:      bytes
Connection:     close
Content-Length:     5 MB
Content-Type:       audio/mpeg
Date:       2013 Oct 31 14:43:01-8s
ETag:       831c011006861dc9b2fc89ef185f2f4b
Last-Modified:      2013 Aug 28 18:28:31-63d 21h
Server:     Apache/2.2.25 (Amazon)

有人有想法吗?怎么了?

更新:

这里是不工作的歌前1024字节,这里是工作一

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-10-31 13:58:29

在对HEX示例进行分析之后,它显示您的“工作”文件与预期的MPEG-1 Audio Layer 3 with ID3v2 Tag (.mp3 file)相同,但“不工作”的文件不是mp3,而是MPEG-1 Audio Layer 2 (.mp2 file)。根据Android支持的媒体格式,它不受支持。它甚至可能有一个.mp3扩展名,但里面不是一个mp3文件。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19708412

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档