带有音频流的Android java.io.IOException

问题描述 投票:2回答:1

当我通过使用网络服务在流媒体中运行音频播放器时,出现IOException

08-19 09:24:54.235: WARN/System.err(394): java.io.IOException: Prepare failed.: status=0x64
08-19 09:24:54.235: WARN/System.err(394):     at android.media.MediaPlayer.prepare(Native Method)
08-19 09:24:54.235: WARN/System.err(394):     at com.sparsh.xavier.media.activity.AudioPlayerActivity$6$1.run(AudioPlayerActivity.java:183)
08-19 09:24:54.295: WARN/System.err(394):     at android.os.Handler.handleCallback(Handler.java:587)
08-19 09:24:54.295: WARN/System.err(394):     at android.os.Handler.dispatchMessage(Handler.java:92)
08-19 09:24:54.295: WARN/System.err(394):     at android.os.Looper.loop(Looper.java:123)
08-19 09:24:54.295: WARN/System.err(394):     at android.app.ActivityThread.main(ActivityThread.java:4627)
08-19 09:24:54.295: WARN/System.err(394):     at java.lang.reflect.Method.invokeNative(Native Method)
08-19 09:24:54.295: WARN/System.err(394):     at java.lang.reflect.Method.invoke(Method.java:521)
08-19 09:24:54.295: WARN/System.err(394):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
08-19 09:24:54.295: WARN/System.err(394):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
08-19 09:24:54.295: WARN/System.err(394):     at dalvik.system.NativeStart.main(Native Method)
08-19 09:24:55.075: ERROR/AudioService(68): Media server died.

我在使用以下网址时出现上述错误http://cdnbakmi.kaltura.com/p/672322/sp/67232200/raw/entry_id/0_281db5u2/version/0

但是当我尝试使用示例URL http://www.pocketjourney.com/downloads/pj/tutorials/audio.mp3时,我的应用程序不会出现任何错误

我为我的应用编写了下面的代码

mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
mediaPlayer.reset();
mediaPlayer.setDataSource(audioURL);
mediaPlayer.prepare(); // might take long! (for buffering, etc)
mediaPlayer.start();

请告诉我我的编码或提供网址时出现此问题。

预先感谢。

edit:我通过使用以下代码解决了这个问题

HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setInstanceFollowRedirects(false);
String redirectUrl = conn.getHeaderField("Location");

我通过使用上面的代码获得了重定向URL。

android android-mediaplayer
1个回答
-1
投票

[如果它不与一台服务器一起工作(而与另一台服务器一起工作),则意味着问题出在服务器(响应)上,而不是您的应用程序中。请先在浏览器中尝试这些链接。

失败的链接正在重定向到另一个URL,该URL是实际的MP3 URL。因此,您需要连接到URL并获取可能包含实际mp3 URL的响应。

我认为这将获得新的URL。

HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
 urlConnection.getURL()// should give you the new URL dynamically created by server.
© www.soinside.com 2019 - 2024. All rights reserved.