1.시스템&인프라/MistServer

4. MistServer Stream 설정 및 재생 테스트: Inputs,Outputs

쿼드큐브 2025. 4. 11. 10:57
728x90
반응형

MistServer를 사용하여 다양한 방식으로 스트림을 설정하고, VLC Media Player를 통해 스트리밍된 영상을 확인하는 방법을 단계별로 설명합니다.

 

MistServer Stream 설정 및 재생 테스트: Inputs,Outputs

 

목차

1. MistServer Stream 구성

2. Push Input Stream 설정

3. File Input Stream 설정

4. Pull Input Stream 설정

5. Stream 영상 조회: VLC Player

6. Stream Output URL 예시

관련 글 링크

 

 

1. MistServer Stream 구성

 

MistServer에서 Push Input, File Input, Pull Input 방식을 이용하여 스트림을 설정합니다.

  • Push Input: 외부에서 서버로 영상을 전송하는 방식 (예: FFmpeg로 push)
  • File Input: 로컬에 저장된 파일을 스트리밍하는 방식
  • Pull Input: MistServer가 외부 스트림을 직접 가져오는 방식 (예: RTSP)

ffmpeg 및 RTSP URL을 이용하여 MistServer로 영상을 전송하고 스트리밍합니다.

VLC Media Player를 이용하여 MistServer의 스트림에 접속하여 영상을 재생합니다.

 

 

2. Push Input Stream 설정

Push Input 방식은 외부 인코더나 송출 장비에서 MistServer로 실시간으로 비디오 데이터를 전송하는 방식입니다.

◆ 설정 조건: 

  • MistServer 에 test 라는 이름으로 Stream을 생성합니다.
  • Source에 Push://를 입력해서 모든 IP 접근을 허용합니다.
  • ffmpeg 명령어로 MistServer에 rtsp로 비디오 데이터를 전송합니다.
  • vlc로 MistServer에 접속해서 영상을 수신하여 play합니다.

◆ 신규 Stream 생성:

  • MistServer 관리 인터페이스에 접속하여 "Streams" 메뉴로 이동한 후, "Create a new stream" 버튼을 클릭합니다.

  • Stream name: 필드에 test 를 입력합니다.
  • Source: 드롭다운 메뉴에서 "Push" 를 선택합니다. Source 입력 필드에 자동으로 push:// 가 입력됩니다.
  • push://*와 같이 와일드카드를 사용하면 오류 발생 → push://만 사용해야 정상 동작 합니다.
  • Source를 설정하면 RTMP, SRT, RTSP 접속 URL이 자동으로 생성됩니다.

  • 하단의 "Save" 를 선택하여 저장 후 스트림 목록을 확인합니다.

 

Stream Push 테스트:

  • 터미널 또는 명령 프롬프트에서 다음 ffmpeg 명령어를 실행하여 RTSP 스트림을 MistServer로 전송합니다.
ffmpeg -i rtsp://xx.xx.xx.xx:554/onvif/profile2/media.smp -c copy -f rtsp rtsp://[MistServer IP 주소]:5554/test

  • MistServer 관리 인터페이스의 해당 스트림 상태 화면 또는 미리보기 화면을 통해 영상이 정상적으로 수신되는지 확인할 수 있습니다.

 

3. File Input 스트림 설정

File Input 방식은 MistServer가 서버 내의 비디오 파일을 읽어 스트리밍하는 방식입니다.

◆ 설정 조건: 

  • MistServer에 rose 라는 이름으로 스트림을 생성합니다.
  • Source에 스트리밍할 동영상 파일 경로 (/mnt/d/nvtest/rose.mp4) 를 등록합니다.
  • VLC Player를 사용하여 MistServer의 스트림 URL에 접속하여 영상을 재생합니다.

Stream "rose" 설정:

  • MistServer 관리 인터페이스에서 "Create a new stream" 을 클릭합니다.
  • Stream name: 필드에 rose 를 입력합니다.
  • Source: 드롭다운 메뉴에서 "File" 을 선택합니다. Source 입력 필드에 /mnt/d/nvtest/rose.mp4 를 입력합니다.
  • 하단의 "Save" 버튼을 클릭하여 스트림 설정을 저장합니다.

 

 Stream "rose" 테스트:

  • "2.Push Input 스트림 설정 - Stream Push 테스트 참조"
  • MistServer 관리 인터페이스의 해당 스트림 상태 화면 또는 미리보기 화면을 통해 영상이 정상적으로 수신되는지 확인할 수 있습니다. 

 

4. Pull Input 스트림 설정

Pull Input 방식은 MistServer가 특정 RTSP URL로부터 비디오 데이터를 가져와 스트리밍하는 방식입니다.

◆ 설정 조건: 

  • MistServer에 camera 라는 이름으로 스트림을 생성합니다.
  • Source에 영상을 수신할 RTSP URL 경로 (rtsp://[카메라 IP 주소]:554/live) 를 입력합니다.
  • VLC Player를 사용하여 MistServer의 스트림 URL에 접속하여 영상을 재생합니다.

Stream "camera" 설정:

  • MistServer 관리 인터페이스에서 "Create a new stream" 을 클릭합니다.
  • Stream name: 필드에 camera 를 입력합니다.
  • Source: 드롭다운 메뉴에서 "Pull" 을 선택합니다. Source 입력 필드에 RTSP URL (rtsp://[카메라 IP 주소]:554/live) 을 입력합니다. 실제 카메라의 RTSP URL로 변경해야 합니다.
  • 하단의 "Save" 버튼을 클릭하여 스트림 설정을 저장합니다.

 

 Stream "camera" 테스트:

  • "2.Push Input 스트림 설정 - Stream Push 테스트 참조"
  • MistServer 관리 인터페이스의 해당 스트림 상태 화면 또는 미리보기 화면을 통해 영상이 정상적으로 수신되는지 확인할 수 있습니다. 

 

5. Stream 영상 조회: VLC Player

VLC Media Player를 사용하여 MistServer에서 설정한 각 스트림에 접속하여 영상이 정상적으로 재생되는지 확인합니다.

"미디어" 메뉴에서 "네트워크 스트림 열기"를 선택하고, 아래의 예시 URL들을 참고하여 접속합니다.

[MistServer IP 주소] 부분을 실제 MistServer의 IP 주소로 변경해야 합니다.

  • test (Push Input): rtsp://[MistServer IP 주소]:5554/test

 

  • rose (File Input): http://[MistServer IP 주소]:8080/rose.mp4 또는 rtsp://[MistServer IP 주소]:5554/rose

 

  • camera (Pull Input): rtsp://[MistServer IP 주소]:5554/camera

 

 

6. 스트림 Output URL 예시

MistServer는 다양한 프로토콜을 통해 스트림을 제공합니다.

클라이언트 (예: VLC Player)는 아래의 URL 예시를 참고하여 스트림 영상을 재생할 수 있습니다.

프로토콜 접속 URL 예시
SDP (Session Description Protocol) http://172.18.89.20:8080/camera.sdp
WebM (VP8/VP9 기반 스트리밍) http://172.18.89.20:8080/camera.webm
RTMP (Real-Time Messaging Protocol) rtmp://172.18.89.20/play/camera
RTSP (Real-Time Streaming Protocol) rtsp://172.18.89.20:5554/camera
DTSC (Direct Transport Stream Control) dtsc://172.18.89.20/camera
SRT (Secure Reliable Transport) srt://172.18.89.20/streamid=camera
MP4 (WebSocket 기반 스트리밍) ws://172.18.89.20:8080/camera.mp4
MP4 (HTTP 기반 스트리밍) http://172.18.89.20:8080/camera.mp4
HLS (TS - HTTP Live Streaming) http://172.18.89.20:8080/hls/camera/index.m3u8
Smooth Streaming (MS-SSTR) http://172.18.89.20:8080/cmaf/camera/Manifest
HLS (CMAF - Common Media Application Format) http://172.18.89.20:8080/cmaf/camera/index.m3u8
DASH (Dynamic Adaptive Streaming over HTTP) http://172.18.89.20:8080/cmaf/camera/index.mpd
WebRTC (WHEP - WebRTC HTTP Egress Protocol) http://172.18.89.20:8080/webrtc/camera
WebRTC (WebSocket 기반 스트리밍) ws://172.18.89.20:8080/webrtc/camera

 

MistServer의 각 스트림의 "Embed" 탭을 선택하면 JavaScript 플레이어 사용법 및 더 자세한 프로토콜별 스트림 URL 정보를 확인할 수 있습니다.

 

 


관련 글 링크

3.MistServer 스트리밍 이해하기: Inputs,Outputs,Push,Recording

2.MistServer 기본 설정하기: 계정등록, 프로토콜 설정

728x90
반응형