18

如何直播视频到Android(2.1或更高版本),我有两个链接:m3u8f4m(据我所知,f4m不支持)。将视频直播到Android

从我在stackoverflow上看到的,有一种方法可以将m3u8与vitamio进行流式处理(但链接不工作)。

有没有其他方法可以流式传输m3u8视频? 也许有其他格式可以使用?

谢谢。

回答

32

因为没有人回答我的问题,我会自己做。

如果要在Android 2.1及更高版本上执行HLT(HTTP实时流),可以使用vitamio库。 (http://www.vitamio.org/)。

这里是代码例如: 主要布局:

<?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> 

类:

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

我们可以使用vitamio进行RTMP吗? – 2013-12-02 09:24:51

+0

让我的一天! Tks – 2014-05-08 23:14:26

+1

如何添加维生素库? plz – 2014-12-06 06:09:05

3

我与OS 2.2,2.3.4和4.0.4测试的相同流上的设备。这个流在我所拥有的设备上与普通的VideoView配合得很好。我不使用媒体控制器与直播流。其余的代码很简单。

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

我如何从dailymotion嵌入链接像这样的m3u8链接http://www.dailymotion.com/embed/video/x2qo9ad – 2015-08-20 04:53:22

0

KickFlip是一个开源和免费的库视频流,它是超级容易Ť设置。

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

试试这个。

-1

要添加vitamio到您的项目只需添加此依赖项。 编译'me.neavo:vitamio:4.2.2' 然后由@butter告诉你这样做。 Happy Coding.good luck