2012-08-27 88 views
7

我需要在具有2.x及更高版本的設備上播放實時流。 This指出,使用Android 2.x的設備無法播放實時流。使用Android 2.x直播音頻流

這是什麼我的選擇?特別是我對流媒體音頻感興趣 - 我應該選擇哪種格式並與哪種協議結合使用?

P.S.我試過Vitamio--不想讓客戶下載第三方庫。

UPD

+0

它聲明https(安全)連接的流媒體直播不支持3.0以下,你可以在http連接中使用rtp像協議流式直播視頻 –

+0

你能給我一個這樣的流的例子嗎?附: 「HTTP/HTTPS直播流草案協議:在Android 3.0之前不支持」 – midnight

+0

嘗試RTP(或者你甚至可以實現一個啓用Java腳本的網絡視圖來完成直播.. SHORTCUT!) –

回答

3

嘗試這個例子RTSP流(網址應該支持RTSP)視頻修改代碼,只支持音頻

public class MultimediaActivity extends Activity { 
private static final String RTSP = "rtsp://url here"; 

/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.multimedia); 


     //***VideoView to video element inside Multimedia.xml file 
    VideoView videoView = (VideoView) findViewById(R.id.video); 
    Log.v("Video", "***Video to Play:: " + RTSP); 
    MediaController mc = new MediaController(this); 
    mc.setAnchorView(videoView); 
    Uri video = Uri.parse(RTSP); 
    videoView.setMediaController(mc); 
    videoView.setVideoURI(video); 
    videoView.start(); 

} 
} 

編輯:

在Android中 現場使用MediaPlayer的現場音頻流媒體從1.6 sdk開始,Android中的音頻流變得如此簡單。在setDataSource()API中直接傳遞url和音頻將無任何問題地播放。

完整的代碼片段,

public class AudioStream extends Activity { 

@Override 
public void onCreate(Bundle savedInstanceState) { 
super.onCreate(savedInstanceState); 
String url = "http://www.songblasts.com/songs/hindi/t/three-idiots/01-Aal_Izz_Well-(SongsBlasts.Com).mp3"; 
MediaPlayer mp = new MediaPlayer(); 
try { 
mp.setDataSource(url); 
mp.setAudioStreamType(AudioManager.STREAM_MUSIC); 
mp.prepare(); 
mp.start(); 
} catch (Exception e) { 
Log.i("Exception", "Exception in streaming mediaplayer e = " + e); 
} 
} 
} 
+0

rtsp://live.media.rai.it/broadcast/radiodue.rm - 「此視頻無法播放」 – midnight

+0

錯誤是什麼? (我已經成功地運行此代碼) –

+0

你確定網址的作品? –

0

您可以使用由Android原生媒體播放器支持RTSP協議。

    player = new MediaPlayer(); 
        player.reset(); 
        player.setDataSource(intent.getStringExtra("Path")); 
        player.prepare(); 
        player.setOnPreparedListener(new OnPreparedListener() { 

         public void onPrepared(MediaPlayer mp) { 
          player.start(); 
         } 
        }); 

其中路徑將是您的rtsp音頻流url。

+0

我幾乎相信這樣做。我需要一個工作的rtsp流來檢查它實際上是否正在工作,並且是實現我自己的rtsp流的一個很好的參考。謝謝 – midnight

+0

谷歌,當然你會發現一些很好的鏈接。我最近在做同樣的工作,但我不能透露這個鏈接。此代碼在我的應用程序中完美工作。 –

+0

我發現一個http://www.pocketjourney.com/audio.mp3試試這可能是它的工作。 –