【发布时间】:2009-12-15 16:12:57
【问题描述】:
我收到以下错误
12-15 16:54:37.125: 错误/MediaPlayer(6032): 错误 (-2147483648, 0)
尝试在服务中执行此代码时:
MediaPlayer mp = null;
@Override
public void onCreate() {
if (mp == null) {
mp = new MediaPlayer();
}
}
@Override
public void onStart(Intent intent, int startId) {
if (!mp.isPlaying()) {
Log.d(DEBUG_TAG, "Not playing, starting stream...");
try {
mp.setDataSource(getString(R.string.address_p3));
mp.prepare();
} catch (IOException e) {}
mp.start();
} else {
Log.d(DEBUG_TAG, "Playing, pausing stream...");
try { mp.pause(); }
catch (Exception e) {}
}
}
当第一次调用服务并且不存在MediaPlayer-object 时,流会正确启动。
但是当onStart()-方法再次被调用(播放器流式传输)时,我得到了上面的错误代码。
我找不到有关此错误代码的任何信息,因此我向您寻求帮助。用mp.stop() 替换mp.pause() 使其工作。
会不会是流不支持暂停?它是 SDP 格式的在线广播流 (RTSP)。
【问题讨论】:
-
您是否尝试过使用其他流和媒体格式的代码?此外,如果您有一个示例 RTSP URL,这对测试很有用。
-
我只尝试了一个流 (rtsp://lyssna-mp4.sr.se/live/mobile/SR-P3.sdp)。我可以尝试另一种格式,看看会发生什么。
标签: java android media-player rtsp