비디오 통계와 비트레이트
Social Stream Ninja 도크 오른쪽 위에 수신 스트림 비트레이트를 표시하세요.
용도
진행자나 제작진이 도크에서 작은 실시간 비트레이트 표시를 볼 수 있습니다. OBS, 모바일 인코더 등의 송출기가 자체 릴레이 또는 수신 서버로 송출할 때 유용합니다.
SSN은 사용 가능한 지연 시간, 버퍼, 패킷 손실, 가동 시간, 코덱, 시청자 데이터도 다음으로 정규화합니다: video_stats 메타데이터 이벤트입니다. 기본 도크 표시는 비트레이트만 보여 줍니다.
호환성
- SRT Live Server / SLS: JSON
/stats엔드포인트에 포함된publishers객체입니다. - Belabox Cloud: SRT 형식 JSON 수신기/릴레이 통계 응답.
- NGINX RTMP: NGINX RTMP 상태 모듈의 XML.
- Node Media Server: JSON 스트림 API이며 선택적으로 HTTP 기본 인증을 사용합니다.
사용 방법
- 호환 서버의 HTTP 통계 엔드포인트를 켜고 SSN을 실행하는 컴퓨터에서 해당 URL을 열 수 있는지 확인하세요.
- SSN에서 전역 설정, 활성화하세요: 비디오 통계 폴링.
- 소스 유형을 선택하고 통계 URL을 입력하세요.
- SRT 또는 Belabox에서는 정확한 송출자 ID를 입력하세요. 예:
publish/live/feed1입니다. 응답에 송출자가 하나뿐이면 SSN이 자동으로 선택합니다. - NGINX RTMP 또는 Node Media Server에서는 애플리케이션과 스트림 키/이름을 입력하세요. 예:
live그리고feed1. - 필요하면 인증을 추가하세요. SRT API 키 입력란은 전체
Authorization헤더로 전송됩니다. Node Media Server는 사용자 이름/비밀번호를 HTTP 기본 인증에 사용합니다. - 폴링 간격을 1–60초로 선택하세요. 기본값은 5초입니다.
- 도크 옵션에서 활성화할 항목: 비트레이트 메타데이터가 있으면 오른쪽 위에 표시을 켠 뒤 도크 링크를 열거나 새로고침하세요.
- 비디오 송출을 시작하세요. 유효한 온라인 응답을 받으면 비트레이트가 표시됩니다.
아무것도 나타나지 않을 때
- SSN에서 두 비디오 통계 옵션이 모두 켜져 있는지 확인하세요.
- 엔드포인트가 5초 안에 응답하고 소스 유형과 스트림 식별자가 일치하는지 확인하세요.
127.0.0.1는 SSN을 실행하는 컴퓨터를 뜻합니다. 서버가 다른 기기라면 해당 서버의 LAN 주소를 사용하세요.- 스트림이 오프라인이거나 비트레이트가 없거나 0인 경우, 또는 약 130초 동안 새 통계가 도착하지 않으면 표시가 사라집니다.
고급: 프로토콜, 형식, 단위
SSN은 HTTP 또는 HTTPS로 다음 요청을 보냅니다: GET 을 설정한 간격으로 보내며 캐시를 사용하지 않고 시간 제한은 5초입니다.
SRT Live Server / SLS 및 Belabox Cloud
{
"publishers": {
"publish/live/feed1": {
"bitrate": 4500, "rtt": 32.5, "msRcvBuf": 120,
"mbpsRecvRate": 4.5, "mbpsBandwidth": 12.8,
"pktRcvDrop": 2, "pktRcvLoss": 1,
"bytesRcvDrop": 2632, "bytesRcvLoss": 1316, "uptime": 3600
}
}
}
bitrate 는 Kbps입니다. RTT와 수신 버퍼는 밀리초, 수신 속도와 대역폭은 Mbps, 가동 시간은 초, 손실/드롭 값은 패킷 수 또는 바이트입니다.
NGINX RTMP
URL은 NGINX RTMP 상태 XML을 반환해야 합니다. SSN은 설정한 애플리케이션과 스트림을 일치시킵니다. 읽는 값: bw_video 를 초당 바이트로 읽고 1024로 나누어 다음 값으로 사용합니다: bitrateKbps로 계산합니다. 스트림 시간과 선택적인 비디오/오디오 코덱 메타데이터도 읽습니다.
Node Media Server
SSN이 요청하는 대상: STATS_URL/APPLICATION/STREAM_NAME입니다. 필드는 최상위 또는 다음 안에 있을 수 있습니다: data.
{ "data": { "isLive": true, "bitrate": 4500, "viewers": 3, "duration": 3600 } }
비트레이트는 Kbps, 시청자는 인원수, 지속 시간은 초입니다.
정규화된 SSN 이벤트
{
"type": "generic",
"event": "video_stats",
"meta": {
"provider": "srt-live-server", "source": "srt-live-server",
"label": "SRT", "online": true,
"updatedAt": "2026-07-13T14:45:00.000Z",
"bitrateKbps": 4500, "rttMs": 32.5, "bufferMs": 120,
"summary": "4500 Kbps, 33 ms, 120 ms"
}
}
| 필드 | 단위/유형 |
|---|---|
bitrateKbps | Kbps, 정수 |
rttMs / bufferMs | 밀리초 |
recvRateMbps / bandwidthMbps | Mbps |
| 손실/드롭 필드 | 패킷 수 또는 바이트 |
uptimeSeconds / durationSeconds | 초 |
online | 불리언; false 이면 도크 값이 숨겨집니다 |
도크가 받는 값: meta.bitrateKbps, 포함: meta.bitrate 그리고 meta.kbps 를 대체 값으로 사용합니다. 1000 미만은 반올림한 Kbps로, 그 이상은 소수점 한 자리로 반올림한 Mbps로 표시됩니다. 통계 URL, 스트림 키, 인증 정보는 오버레이에 전송되지 않습니다.