2009-12-15 166 views
0

我得到以下錯誤未知錯誤()

12-15 16:54:37.125:ERROR/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.pause()mp.stop()使它的工作。

難道這個流不支持暫停嗎?這是一個SDP格式的在線廣播流(RTSP)。

+0

你有沒有嘗試過與其他流和媒體格式的代碼?另外,如果你有一個示例RTSP URL,這對測試很有用。 – 2009-12-15 19:30:28

+0

我只試過一個流(rtsp://lyssna-mp4.sr.se/live/mobile/SR-P3.sdp)。我可以嘗試另一種格式,看看會發生什麼。 – aspartame 2009-12-16 08:11:29

回答

2

我已閱讀this tutorial關於博客自定義StreamingMediaPlayer類的Android,在教程中他談到他如何完成暫停流。

這可能對您有所幫助,如果它不能解決您需要的東西,至少它會爲您提供有關如何實現此類任務的另一個視角。

+0

我會檢查出來的! – aspartame 2009-12-16 08:12:42