2014-01-10 286 views
1

我想在Android媒體播放器中播放RTSP音頻流。我試圖直接綁定到媒體播放器中的RTSP鏈接。有時它播放的很好,但現在它沒有播放並顯示媒體播放器錯誤:在Android媒體播放器中播放Rtsp音頻流

MediaPlayer(808): error (1, -2147483648).

問題在哪裏?

這裏是我的代碼的某些部分:

public class PlayRadio extends AsyncTask<Void, Void, Void> { 

    @Override 
    protected Void doInBackground(Void... arg0) { 
     // TODO Auto-generated method stub 
     setDataSource(rtspUrl); 
     Log.e("inside doinbackground....", path); 
     return null; 
    } 
    @Override 
    protected void onPostExecute(Void result) { 
     // TODO Auto-generated method stub 
     super.onPostExecute(result); 

     player.setOnPreparedListener(new OnPreparedListener() { 

      public void onPrepared(MediaPlayer mp) { 
       player.start(); 
       Toast.makeText(getApplicationContext(), "starting..", Toast.LENGTH_LONG).show(); 
      } 
     }); 
     player.setAudioStreamType(AudioManager.STREAM_MUSIC); 
    } 
} 

private void setDataSource(String path2) { 
    // TODO Auto-generated method stub 
     player=new MediaPlayer(); 
     try { 
      Uri a =Uri.parse("rtsp://stream.rtm.swiftserve.com/live/rtm/rtm-ch010"); 

      player.setDataSource(getApplicationContext(),a); 
      player.prepareAsync(); 
     } 
     catch (IllegalArgumentException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } 
     catch (SecurityException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } 
     catch (IllegalStateException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } 
     catch (IOException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } 
     //Log.e("tempPath", tempPath); 
    } 
+0

嗨,你現在有結果嗎?我也有同樣的問題。我使用iMove刪除視頻的視頻部分,只保留音頻,並保存爲.mp4格式。我已經嘗試了很多次。但它證明rtsp不能讀取音頻流。另外,我嘗試使用http而不是rtsp作爲音頻部分。 –

+0

嗨Albert陳,通常Android不支持rtsp編解碼器播放音頻。我通過定製第三方編解碼器('https://www.vitamio.org/en/')解決了rtsp音頻問題。你可以試試這個希望你的問題將得到解決。 –

回答

0

此錯誤MediaPlayer(808): error (1, -2147483648)簡單地告訴你,你正在播放的視頻文件不是由您的設備支持。

通常RTSP鏈接使用目前Android設備不支持的.sdp格式。

請在這裏檢查Supported Media Formats

+0

我想播放rtsp音頻流而不是視頻。有時我的程序工作,它可以播放rtsp音頻流,但大多數媒體播放器顯示error.i在模擬器中測試它。 –

+0

你可以上傳有問題的代碼嗎?可能會解決我的問題。 – Kitkat

+0

此鏈接拋出錯誤rtsp://srv6.zoeweb.tv/z325-live/stream 但這個鏈接很容易播放rtsp://stream.rtm.swiftserve.com/live/rtm/rtm-ch010.i不要找出問題出在哪裏。 –