18

Come posso trasmettere video live ad Android (2.1 e versioni successive), ho due link: m3u8 e f4m (Come noto, f4m non è supportato).streaming video in diretta su Android

Da quello che ho visto su StackOverflow, c'è un modo per trasmettere m3u8 con vitamio (ma il collegamento non funziona).

C'è un altro modo per lo streaming di video m3u8? Forse c'è altro formato che posso usare?

Grazie.

risposta

32

Perché nessuno ha risposto alla mia domanda, lo farò da solo.

Se si desidera eseguire HLT (HTTP Live Stream) su Android 2.1 e versioni successive, è possibile utilizzare la libreria vitamio.

Sito all'indirizzo: (http://www.vitamio.org/).

Ecco esempio di codice: Il layout principale:

<?xml version="1.0" encoding="utf-8"?> 

<LinearLayout android:id="@+id/LinearLayout01" 
      android:layout_height="fill_parent"   xmlns:android="http://schemas.android.com/apk/res/android" 
      android:paddingLeft="2px" android:paddingRight="2px" 
      android:paddingTop="2px" android:paddingBottom="2px" 
      android:layout_width="fill_parent" android:orientation="vertical"> 

      <io.vov.vitamio.widget.VideoView 
       android:layout_height="fill_parent" 
       android:layout_width="fill_parent" android:id="@+id/VideoView">    
      </io.vov.vitamio.widget.VideoView> 
</LinearLayout> 

la Classe:

import io.vov.vitamio.widget.MediaController; 
import io.vov.vitamio.widget.VideoView; 
import android.app.Activity; 
import android.content.Intent; 
import android.net.Uri; 
import android.os.Bundle; 



public class LiveStrimingTestActivity extends Activity{ 

    VideoView videoView; 

    private void test_2(){ 
     String httpLiveUrl = "http://aj.lsops.net/live/aljazeer_en_high.sdp/playlist.m3u8"; 
     videoView = (VideoView) findViewById(R.id.VideoView); 
     videoView.setVideoURI(Uri.parse(httpLiveUrl)); 
     MediaController mediaController = new MediaController(this); 
     videoView.setMediaController(mediaController); 
     videoView.requestFocus(); 
     videoView.start(); 
    } 


    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
     test_2();    
    }  
} 
+1

Possiamo usare vitamio per RTMP ?? –

+0

Rendi la mia giornata! Tks –

+1

Come aggiungere la libreria vitamio ?? plz –

3

ho provato lo stesso flusso su dispositivi con OS 2.2, 2.3.4 e 4.0.4 . Questo stream funziona molto bene con VideoView regolare sui dispositivi che ho. Non uso MediaController con flussi live. Il resto del codice è semplice.

initializeVideoView(); 
mVideoView.setVideoURI(Uri.parse("http://aj.lsops.net/live/aljazeer_en_high.sdp/playlist.m3u8")); 
mVideoView.setMediaController(null); 
mVideoView.start(); 
+0

come posso ottenere il link m3u8 dal link di dailymotion embed come questo http://www.dailymotion.com/embed/video/x2qo9ad –

0

KickFlip è un open source e la biblioteca libera per lo streaming video ed è super facile configurazione t.

Kickflip.initWithApiKey(API_KEY, API_SECRET); 
Kickflip.startBroadcastActivity(this, mBroadcastListener); 

provare questo.

-1

Per aggiungere vitamio al progetto è sufficiente aggiungere questa dipendenza. compile 'me.neavo: vitamio: 4.2.2' e poi come @butter ti ha detto di fare. Happy Coding.buon fortuna