우분투 22.04 환경에서 ffmpeg를 활용하여 동영상 파일을 RTSP로 송출하는 방법은 아래와 같다.
ffmpeg 설치
아래의 명령어를 입력하여 ffmpeg를 설치한다.
sudo apt-get install ffmpeg

아래의 명령어를 입력하여 설치된 ffmpeg 버전을 확인한다.
ffmpeg -version

RTSP 서버 설치
아래의 명령어를 입력하여 RTSP 서버로 사용할 mediamtx의 설치 파일을 다운로드 한다.
wget https://github.com/bluenviron/mediamtx/releases/download/v1.12.3/mediamtx_v1.12.3_linux_amd64.tar.gz

아래의 명령어를 입력하여 다운로드한 설치 파일을 압축 해제한다.
tar xvf mediamtx_v1.12.3_linux_amd64.tar.gz

아래의 명령어를 입력하여 mediamtx의 설정을 변경하기 위해 편집 모드로 진입한다. 설정 항목을 상황에 맞게 적절하게 수정한다. 본 글에서는 수정하지 않고 그대로 사용한다.
vi mediamtx.yml

설정이 완료되면 아래의 명령어를 입력하여 mediamtx를 실행한다.
./mediamtx

ffmpeg 동영상 파일 송출
아래의 명령어를 입력하여 'video.mp4' 동영상 파일을 RTSP 서버인 mediamtx로 보내서 RTSP가 송출되도록 한다.
ffmpeg -re -stream_loop -1 -i ~/video.mp4 -c copy -f rtsp -rtsp_transport tcp rtsp://127.0.0.1:8554/stream1
설정을 수정해서 송출시에 인증을 해야하는 경우에는 아래의 명령어와 같이 입력한다.
ffmpeg -re -stream_loop -1 -i ~/video.mp4 -c copy -f rtsp -rtsp_transport tcp rtsp://아이디:비밀번호@127.0.0.1:8554/stream1


아래의 사진처럼 VLC 미디어 재생기 같은 RTSP 클라이언트를 사용하여 동영상이 잘 송출(스트리밍)되는지 확인한다.



백그라운드 실행
아래의 명령어로 백그라운드에서 ffmpeg를 실행할 수 있다.
nohup ffmpeg -re -stream_loop -1 -i ./video.mp4 -c copy -f rtsp -rtsp_transport tcp rtsp://127.0.0.1:8554/stream0 > stream0.log 2>&1 &
실행된 프로세스의 고유 번호인 pid를 파일로 저장하면서 백그라운드로 실행하려면 아래의 명령어를 사용한다.
nohup ffmpeg -re -stream_loop -1 -i ./video.mp4 -c copy -f rtsp -rtsp_transport tcp rtsp://127.0.0.1:8554/stream0 > stream0.log 2>&1 & echo $! > stream0.pid
참고문서
- "FFMPEG RTSP 스트리밍 링크 정리", Alphago, 2020년 10월 20일. @원문보기
- "ffmpeg으로 rtsp 송출하기(RTSPSimpleServer, mediamtx)", 빗자루검, 2024년 7월 12일. @원문보기
- "mediamtx", bluenviron, GitHub. @원문보기
- "FFMPEG", bsh6226, 2025년 4월 30일. @원문보기
- "Does FFMPEG support RTSP authentication?", 2011년 2월 16일. @원문보기
- "ffmpeg 사용시 유의사항", 아미, 2010년 11월 11일. @원문보기
'리눅스(Linux) > Ubuntu' 카테고리의 다른 글
| [우분투 22.04] MediaMTX 시스템 서비스 등록 (0) | 2026.02.08 |
|---|---|
| AWS Lightsail 우분투 24.04 초기 가용 용량은 17GB이다. (0) | 2025.10.27 |
| [우분투 24.04] APT를 활용한 아파치(Apache) 웹 서버 설치 (0) | 2025.10.24 |
| [Ubuntu 22.04] Fail2Ban 설치 (2) | 2025.07.30 |
| [우분투] "devices has a firmware upgrade available." (6) | 2025.06.26 |
댓글