반응형
RTSP란?
2023.04.11 - [Protocol] - RTSP(Real Time Streaming Protocol)
ExoPlayer로 RTSP 동영상 재생하기
2023.04.11 - [Android] - Android RTSP 영상 재생하기
RSTP 테스트 주소
공공 데이터 포털 충청남도 천안시_교통정보 CCTV
https://www.data.go.kr/data/15063717/fileData.do
Manifests 정의하기
AndroidManifest에 인터넷을 사용할 수 있게 하는 권한을 추가한다
<uses-permission android:name="android.permission.INTERNET" />
VideoView 레이아웃 작성하기
ExoPlayer로 RSTP 동영상을 재생할 수 있는 줄 알았는데 안드로이드에서 제공하는 VideoView로도 재생할 수 있었다.
VideoView로 동영상을 재생하기 위해서는 먼저 VideoView 레이아웃을 만들어야 한다.
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<VideoView
android:id="@+id/videoView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.5"
/>
</androidx.constraintlayout.widget.ConstraintLayout>
VideoView레이아웃은 화면 전체를 채우도록 만들었다.
MainActivity 작성
MainActivity에서는 onCreate할때 작성해 두었던 VideoView 레이아웃으로 설정하고 VideoView를 얻어와서 URI를 받아서 VideoView에 uri를 넣어주기만 하면 된다.
그리고 setOnPreparedListener를 구현해서 비디오가 준비되면 영상을 재생하도록 하였다.
package com.example.mediaplayer;
import android.media.MediaPlayer;
import android.net.Uri;
import android.os.Bundle;
import android.widget.MediaController;
import android.widget.VideoView;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main_activity);
VideoView videoView = findViewById(R.id.videoView);
Uri uri = Uri.parse("rtsp://210.99.70.120:1935/live/cctv002.stream");
videoView.setVideoURI(uri);
videoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mediaPlayer) {
mediaPlayer.start();
}
});
}
}
결과
VideoView로도 RTSP 동영상을 재생할 수 있는것을 알 수 있었다.
반응형
'Android' 카테고리의 다른 글
전체 화면 설정 (0) | 2023.04.21 |
---|---|
RecyclerView 만들기 (0) | 2023.04.18 |
RecyclerView (0) | 2023.04.16 |
Android RTSP 영상 재생하기 (0) | 2023.04.11 |
Firebase Cloud Messaging(FCM) 푸시 알림 안드로이드 앱 구현 (0) | 2023.03.15 |