Vitamio全屏视频

时间:2013-06-19 22:43:34

标签: fullscreen android-videoview

我尝试使用Vitamio进行直播。我解决了一些问题,但我无法解决这个问题。视频无法全屏播放。这些是我的代码。我希望你能帮帮我!谢谢,抱歉我的英语不好。

package com.uusoftware.tvizle;

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

public class Trt extends Activity{

    VideoView videoView;

    private void Trt1(){
        String httpLiveUrl = "rtmp://trt-i.mncdn.com/trt1/trt15";   
        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.videolayout);
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
                WindowManager.LayoutParams.FLAG_FULLSCREEN);
        Trt1();             
    }     
}


<?xml version="1.0" encoding="utf-8"?>`
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <io.vov.vitamio.widget.CenterLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical" >

        <io.vov.vitamio.widget.VideoView
            android:id="@+id/VideoView"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_centerHorizontal="true"
            android:layout_centerVertical="true" />
    </io.vov.vitamio.widget.CenterLayout>

</LinearLayout>

5 个答案:

答案 0 :(得分:5)

VideoView放入RelativeLayout并将其设置为:

<io.vov.vitamio.widget.VideoView 
         android:id="@+id/vitamioView" 
         android:layout_width="fill_parent" 
         android:layout_height="fill_parent" 
         android:layout_alignParentLeft="true" 
         android:layout_alignParentTop="true" 
         android:layout_alignParentRight="true" 
         android:layout_alignParentBottom="true" />

答案 1 :(得分:1)

使用此方法在活动的onCreate()方法中拉伸视频视图

mVideoView.setVideoLayout(VideoView.VIDEO_LAYOUT_STRETCH, 0);

处理onConfigurationChange();

使用下面的代码

@Override
public void onConfigurationChanged(Configuration newConfig) {
    super.onConfigurationChanged(newConfig);

    if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {

        mVideoView.setVideoLayout(VideoView.VIDEO_LAYOUT_STRETCH, 0);
        Log.e("On Config Change", "LANDSCAPE");

    } else {
        mVideoView.setVideoLayout(VideoView.VIDEO_LAYOUT_STRETCH, 0);
        Log.e("On Config Change", "PORTRAIT");
    }

}

也会在您的活动清单文件

中添加此内容
android:configChanges="orientation|screenSize|smallestScreenSize|keyboard|keyboardHidden|navigation"

答案 2 :(得分:1)

if (getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) {
        mVideoView.setVideoLayout(io.vov.vitamio.widget.VideoView.VIDEO_LAYOUT_STRETCH, 0);

} else if (getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT) {
        mVideoView.setVideoLayout(io.vov.vitamio.widget.VideoView.VIDEO_LAYOUT_ORIGIN, 0);
}
谢谢@Qadir Hussain 。为我工作

答案 3 :(得分:0)

如果使用直播,那么 有一个用于直播的布局文件,名称为“mediaplayer_2.xml”

使用以下内容更改布局。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >

<io.vov.vitamio.widget.CenterLayout
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <SurfaceView
        android:id="@+id/surface"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_gravity="center" >
    </SurfaceView>
</io.vov.vitamio.widget.CenterLayout>

</LinearLayout>

通过这种方式我解决了我的问题。

答案 4 :(得分:0)

`package com.uusoftware.tvizle;

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

public class Trt extends Activity{

private VideoView mVideoView;

private void Trt1(){
    String httpLiveUrl = "rtmp://trt-i.mncdn.com/trt1/trt15";   
    mVideoView = (VideoView) findViewById(R.id.VideoView);
    mVideoView.setVideoURI(Uri.parse(httpLiveUrl));
    MediaController mediaController = new MediaController(this);
    mVideoView.setMediaController(mediaController);
    mVideoView.requestFocus();
    mVideoView.setVideoLayout(VideoView.VIDEO_LAYOUT_STRETCH, 0);
    mVideoView.start();
}


public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.videolayout);
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
            WindowManager.LayoutParams.FLAG_FULLSCREEN);
    Trt1();             
}     

}`