Skip to content

Android.widget.VideoView

Android android.widget.VideoView를 사용하는 방법에 대하여 정리한다.

Simple example

아래와 같은 방법으로 간단하게 영상을 재생할 수 있다.

우선 Layout에 아래와 같이 VideoView를 추가한다.

<VideoView
    android:id="@+id/videoview"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" />

이후, Activity에 영상을 재생하기 위한 코드를 삽입한다.

VideoView video = (VideoView) findViewById(R.id.videoview);

// 필요하다면 미디어 컨트롤러를 추가할 수 있다.
MediaController mc = new MediaController(this);
mc.setAnchorView(video);
mc.setMediaPlayer(video);
video.setMediaController(mc);

// 재생할 영상 URI를 적용한다.
String path="http://qthttp.apple.com.edgesuite.net/1010qwoeiuryfg/sl.m3u8";
//String path="http://sites.google.com/site/ubiaccessmobile/sample_video.mp4";
//String path="http://video.webmfiles.org/big-buck-bunny_trailer.webm";
Uri uri = Uri.parse(path);
video.setVideoURI(uri);

// 재생.
video.start();

참고로 URI를 사용하여 영상을 재생할 경우 Internet을 사용하므로 아래와 같이 Manifest에 권한을 추가해야 한다.

<uses-permission android:name="android.permission.INTERNET"/>

Example

VideoView에 동영상을 출력하는 방법.

public void setPreviewVideoPath(String path) {
    VideoView video = (VideoView) _preview_viewer.findViewById(R.id.createpreview_view__video);
    if (video != null) {
        _preview_viewer.removeView(video);
        _preview_viewer.addView(video, LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);

        video.setVisibility(View.VISIBLE);
        video.setZOrderOnTop(true);
        video.setVideoPath(path);

        // 비디오 컨트롤러연동.
        MediaController controller = new MediaController(this);
        controller.setAnchorView(video);
        // controller.setVisibility(View.INVISIBLE); // 미디어 컨트롤러 HIDE.
        video.setMediaController(controller);

        _video_preview = video;
    }
}

See also

Favorite site

References


  1. Android_rotate_videoview.pdf