WAND wiki
최근 문서

검색 결과가 없습니다. 모델명이나 다른 키워드로 검색해 보세요.

Quick StartLast Updated 2026-09-26

4. 송출하고 재생 확인하기

On this page

앞의 세 단계에서 구성한 전송 경로에 테스트 신호를 보내고, StreamPackage 원본과 CSS CDN을 차례로 확인합니다.

사전 준비

  • StreamLink Flow와 StreamLive 채널이 시작된 상태인지 확인합니다.
  • StreamLink 입력의 실제 송출 주소를 준비합니다.
  • StreamPackage Endpoint URL과 CSS 재생 URL을 준비합니다.
  • 송출 IP 허용 정책, 필요한 인증 정보, DNS와 HTTPS 인증서를 확인합니다.
  • FFmpeg / ffprobe / ffplay 또는 OBS와 HLS 재생 플레이어를 준비합니다.

아래 URL은 설명용입니다.

1. 테스트 신호 송출

OBS에서는 StreamLink 입력 설정에 맞는 서버 주소와 스트림 키를 입력하고 송출을 시작합니다. FFmpeg를 사용하는 경우 아래와 같이 영상 패턴과 440Hz 테스트음을 보낼 수 있습니다. 테스트음 재생 전 볼륨을 낮춥니다.

LANGUAGE
STREAM_PUSH_URL='rtmp://YOUR_STREAMLINK_HOST/YOUR_APP/YOUR_STREAM_KEY'
ffmpeg -re \
  -f lavfi -i "testsrc=size=1920x1080:rate=30" \
  -f lavfi -i "sine=frequency=440:sample_rate=48000" \
  -c:v libx264 -preset veryfast -b:v 4000k -maxrate 4000k -bufsize 8000k \
  -pix_fmt yuv420p -g 60 \
  -c:a aac -b:a 128k -ar 48000 \
  -f flv "$STREAM_PUSH_URL"

FFmpeg 로그의 송출 프레임 수와 시간, StreamLink 입력 주소 / 프로토콜 / 포트 / 허용 IP 및 목적지 수신 상태를 확인합니다.

2. 전송과 처리 상태 확인

구간 확인할 내용
인코더 → StreamLink 입력 연결과 수신 상태
StreamLink → StreamLive Flow 출력 목적지와 StreamLive 입력 수신 상태
StreamLive → StreamPackage 출력 그룹, 목적지 채널 ID, 출력 상태
StreamPackage → CDN 도메인 연결, 양방향 서비스 권한, 원본 접근 정책

RUNNING 상태와 입력 / 출력 지표, 최종 재생을 함께 확인합니다.

3. 원본 마스터 플레이리스트 확인

LANGUAGE
STREAM_ORIGIN_URL='https://YOUR_PACKAGE_HOST/YOUR_ENDPOINT_PATH/index.m3u8'
curl --fail-with-body --show-error --silent --max-time 20 "$STREAM_ORIGIN_URL"

엔드포인트 인증이 설정되어 있다면 해당 요청에 필요한 헤더나 인증 정보를 별도로 적용합니다.

다음은 두 해상도가 포함된 목록의 형식 예시입니다. 파일명과 수치는 실제 설정에 따라 달라집니다.

LANGUAGE
#EXTM3U
#EXT-X-STREAM-INF:BANDWIDTH=2128000,RESOLUTION=1280x720,FRAME-RATE=30.000
720p.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=4128000,RESOLUTION=1920x1080,FRAME-RATE=30.000
1080p.m3u8

두 항목이 보이면 마스터 목록에 두 출력이 선언된 것입니다. 각 출력의 영상이 정상인지 확인하려면 미디어 목록과 실제 세그먼트까지 내려가야 합니다.

4. 미디어 목록과 세그먼트 확인

마스터에 적힌 미디어 목록 URI를 실제 마스터 URL 기준으로 해석합니다. 파일명만 있으면 같은 디렉터리를, /로 시작하면 같은 호스트의 루트를 기준으로 합니다. 완전한 URL이면 그 주소를 그대로 사용합니다.

LANGUAGE
STREAM_MEDIA_URL='https://YOUR_PACKAGE_HOST/YOUR_ENDPOINT_PATH/720p.m3u8'
curl --fail-with-body --show-error --silent --max-time 20 "$STREAM_MEDIA_URL"

다음 형식의 목록을 몇 초 간격으로 다시 확인합니다.

LANGUAGE
#EXTM3U
#EXT-X-TARGETDURATION:4
#EXT-X-MEDIA-SEQUENCE:100
#EXTINF:4.000,
segment100.ts
#EXTINF:4.000,
segment101.ts
  • 라이브 송출 중 새 세그먼트가 추가되는지 확인합니다.
  • 슬라이딩 목록에서는 시간이 지나면 MEDIA-SEQUENCE도 증가하는지 확인합니다.
  • 목록에 적힌 세그먼트 URL이 실제로 접근 가능한지 확인합니다.
  • 720p와 1080p 각각에서 영상 / 오디오가 포함되어 있는지 확인합니다.
LANGUAGE
ffprobe -v error -show_entries stream=codec_type,codec_name,width,height,r_frame_rate \
  -of json "$STREAM_MEDIA_URL"

ffprobe 결과는 미디어 형식 확인에 사용합니다. 검은 화면, 음소거, 끊김 여부는 실제 재생으로 별도 확인해야 합니다.

5. CDN을 통한 재생 확인

StreamPackage에 연결된 CSS 재생 URL로 같은 검사를 반복합니다.

LANGUAGE
STREAM_CDN_URL='https://YOUR_PLAYBACK_DOMAIN/YOUR_ENDPOINT_PATH/index.m3u8'
curl --fail-with-body --show-error --silent --max-time 20 \
  --dump-header - --output /dev/null "$STREAM_CDN_URL"
ffplay "$STREAM_CDN_URL"

플레이어에서 영상 패턴과 테스트음이 재생되는지, 일정 시간 동안 정지 없이 이어지는지 확인합니다. 자동 화질 선택으로 한 해상도만 재생될 수 있으므로 각 미디어 목록도 따로 검사합니다.

HTTPS 재생은 유효한 인증서 / 호스트 이름 / 인증서 체인으로 확인합니다.

장애 구간 구분

증상 우선 확인
StreamLink 입력 — 인코더 송출 주소 / 키, 프로토콜, 방화벽과 허용 IP
StreamLive 입력 — Flow 출력 주소와 StreamLive 보안 그룹
원본 목록 404 엔드포인트 경로, 원본 송출 여부, 출력 목적지
원본 또는 CDN에서 403 요청 참조 대상의 권한, 헤더 / 쿼리 인증, IP 제한, 도메인 연결
마스터 정상 / 미디어 결과 확인 미디어 URI 해석, 경로와 인증 정보
미디어 정상 / 세그먼트 결과 확인 세그먼트 URI와 접근 정책, 캐시된 목록의 유효성
목록 갱신 중단 원본 송출, 입력 / 출력 상태, 목록 캐시
원본 재생 / CDN 결과 확인 CSS 원본 접근 권한, Host / 경로 / 인증 전달, DNS / TLS
영상만 재생되고 소리 — 원본 오디오 트랙, 오디오 선택 및 출력 템플릿

해당 요청의 호스트 / 경로 / 응답 / 구간별 로그를 함께 확인합니다.

완료 기준

  1. StreamLink와 StreamLive에서 원본 수신 및 출력 전달 확인
  2. StreamPackage 마스터에 필요한 해상도 목록 확인
  3. 각 미디어 목록의 갱신과 세그먼트 접근 확인
  4. 원본과 CSS CDN에서 실제 영상 / 오디오 재생 확인
  5. 재생 중 입력 / 출력 상태와 연속 재생 확인

테스트 종료

FFmpeg는 실행 중인 터미널에서 Ctrl+C로 송출을 종료합니다. 이후 테스트용 StreamLink Flow와 StreamLive 채널을 중지합니다. 삭제는 선택 사항이며, 공유 리소스 여부와 의존성을 먼저 확인합니다.

실행 리소스와 저장 / 전송 사용량을 함께 확인합니다.

관련 문서