在Android中使用Vitamio库播放视频流?

ang*_*rdy 5 android video-streaming vitamio

我正在使用Vitamio库来播放rtsp直播.我尝试运行demo videoview类播放rtsp链接,如下所示:

http://117.103.224.75:1935/live/ definst /VTCHD3/VTCHD3_840x480_1200kbps.stream/playlist.m3u8

==>结果:它运行但质量非常差,加载视频非常低,视频中的图片不清晰,听不到声音.我不知道该怎么做才能让它运行平稳,画面清晰.请帮帮我这个问题!非常感谢 !

这是我的代码:

private String path="http://117.103.224.75:1935/live/_definst_/VTCHD3/VTCHD3_840x480_1200kbps.stream/playlist.m3u8";

private ProgressDialog prodlg;
private VideoView mVideoView;

@Override
public void onCreate(Bundle icicle) {
    super.onCreate(icicle);
    if (!LibsChecker.checkVitamioLibs(this))
        return;
    setContentView(R.layout.videoview);
    prodlg=new ProgressDialog(this);
    prodlg.setIcon(R.drawable.ic_launcher);
    prodlg.setMessage("wating...");
    prodlg.show();

    mVideoView = (VideoView) findViewById(R.id.surface_view);

    if (path == "") {
        // Tell the user to provide a media file URL/path.
        Toast.makeText(VideoViewDemo.this, "Please edit VideoViewDemo Activity, and set path" + " variable to your media file URL/path", Toast.LENGTH_LONG).show();
        return;
    } else {
        /*
         * Alternatively,for streaming media you can use
         * mVideoView.setVideoURI(Uri.parse(URLstring));
         */
        mVideoView.setVideoPath(path);
        mVideoView.setVideoQuality(MediaPlayer.VIDEOQUALITY_HIGH);
        mVideoView.setBufferSize(2048);
        mVideoView.requestFocus();
        mVideoView.start();
        mVideoView.setMediaController(new MediaController(this));

        mVideoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
            @Override
            public void onPrepared(MediaPlayer mediaPlayer) {
                // optional need Vitamio 4.0
                prodlg.dismiss();
                mediaPlayer.setPlaybackSpeed(1.0f);
            }
        });
    }

}
Run Code Online (Sandbox Code Playgroud)

我使用android平台4.0 api 14播放演示: 这是我的屏幕图片演示

Pir*_*hah 2

如果您想使用 Vitamio 库来显示视频等,那么首先从这里下载 Vitamio 库免费下载 Vitamio 库。然后在当前项目中包含“ZI”和“InitActivtiy”(位于Vitamio lib内)库(右键单击项目-->包含库-->),然后编写这行代码

 if (!io.vov.vitamio.LibsChecker.checkVitamioLibs(this))
        return;
Run Code Online (Sandbox Code Playgroud)

在 Oncreate Method() 之后,就像在我的项目中一样。

 @Override
protected void onCreate(Bundle savedInstanceState) 
 {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    if (!io.vov.vitamio.LibsChecker.checkVitamioLibs(this)) //it will check the include library of Vitamio
        return;
Run Code Online (Sandbox Code Playgroud)

之后将此行代码放入 Androidmanifest.xml 文件中

  <!-- (((((( Vitamio Library including in manifest file )))))) -->
   <activity android:name="io.vov.vitamio.activity.InitActivity" 
       android:configChanges="orientation|screenSize|smallestScreenSize|keyboard|keyboardHidden"
       android:launchMode="singleTop"
        android:theme="@android:style/Theme.NoTitleBar"
        android:windowSoftInputMode="stateAlwaysHidden"/>     
Run Code Online (Sandbox Code Playgroud)

现在是使用 VideoView 等显示视频的时候了。