라이브 방송 화면 캡처는 일정 시간 간격으로 실시간 라이브 방송 스트리밍의 영상을 캡처하고 이미지를 생성합니다. 콜백 공지를 통해 화면 캡처 정보를 얻을 수 있습니다. 화면 캡처 데이터는 라이브 방송 음란물 감지, 라이브 방송 썸네일 등 다양한 시나리오에 사용할 수 있습니다.
라이브 방송 화면 캡처 전체 프로세스
전체 프로세스:
1. 콘솔에서 또는 직접 클라우드 API를 호출하여 라이브 방송 화면 캡처 기능을 설정합니다.
라이브 방송 푸시 스트림을 진행합니다.
화면 캡처 서비스는 설정에 따라 화면 캡처 데이터를 생성하며 COS 시스템에 저장됩니다.
생성된 화면 캡처 관련 정보는 콜백 형식으로 사용자에게 공지합니다.
라이브 방송 화면 캡처 설정
화면 캡처 설정 방법
화면 캡처 간격 설정
비즈니스 필요에 따라 화면 캡처 빈도를 지정할 수 있습니다. 즉, 화면 캡처 시간 간격(SnapshotInterval)을 설정할 수 있으며 5초 - 300초 범위에서 설정할 수 있고 기본 간격값은 10초입니다.
화면 캡처 너비 및 높이 설정
화면 캡처 서비스는 너비(Width)와 높이(Height)를 지정하여 캡처할 수 있습니다.
주의사항:
특별히 너비 및 높이를 지정하지 않는 경우 기본값은(0으로 설정할 경우) 푸시 스트림 비디오 화면의 너비 및 높이가 되며, 이 경우 이하 설정을 건너뛰고 직접 다음 단계로 이동하면 됩니다.
먼저 다음 3개의 너비 및 높이 개념을 확인합니다.
푸시 스트림 너비 및 높이는 라이브 방송 스트리밍 비디오 화면 너비 및 높이이며, 본 문서에서는 (X, Y)라고 정의합니다.
설정 너비 및 높이는 콘솔/클라우드 API에서 설정한 너비 및 높이이며, 본 문서에서는 (W, H)라고 정의합니다.
화면 캡처 너비 및 높이는 화면 캡처 서비스가 생성한 화면 캡처 이미지의 너비 및 높이이며, 본 문서에서는 (N, M)이라고 정의합니다.
화면 캡처 서비스는 다음과 같은 시나리오 설정을 지원합니다.
미설정, 즉 기본 (W, H) = (0, 0)으로 설정하는 경우 화면 캡처 이미지의 너비 및 높이는 푸시 스트림의 너비와 높이와 동일해집니다. 즉, (N, M) = (X, Y)가 됩니다.
너비 W만 설정하면 화면 캡처 너비는 N = W가 되며 높이는 동일한 비율로 축소/확대됩니다. 즉, M = N / X * Y가 됩니다.
높이 H만 설정하면 화면 캡처 높이는 M = H가 되며 너비는 동일한 비율로 축소/확대됩니다. 즉, N = M / Y * X가 됩니다.
(W, H)를 모두 설정하면 화면 캡처 너비 및 높이는 설정한 너비 및 높이가 됩니다. 즉, (N, M) = (W, H)가 됩니다.
너비 및 높이 자동 변환을 설정하는 경우 다음 시나리오를 고려할 수 있습니다.
W와 H를 모두 0 이상으로 설정하고 W < H로 설정하였으며 푸시 스트림 시 X > Y인 경우, 즉 너비를 높이보다 작게 설정하였고 푸시 스트림 너비가 높이보다 큰 경우,
직접 화면 캡처하면 이미지가 왜곡되어 변형됩니다. 이미지 변형을 방지하기 위해 라이브 방송 서비스 백그라운드에서 자동으로 W와 H 값을 전환하여 설정된 너비와 높이 관계를 재생 푸시 스트림 화면과 동일하게 유지합니다.
라이브 방송 화면 캡처 이벤트 정보 알림
이벤트 정보 알림 설정은 이벤트 정보 알림을 참조하십시오. 화면 캡처 콜백 알림은 JSON 형식으로 HTTP POST 프로토콜을 이용해 클라이언트가 사전 설정한 수신 서버에 통지합니다. 화면 캡처 콜백 관련 필드
|
| | 콜백 정보 유형. 화면 캡처 콜백 200으로 고정됨 |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
일부 필드 상세 정보
pic_url 상세 정보:
path: 년-월-일
name: 라이브 방송 스트리밍 이름-screenshot-시간-분-초-너비x높이.jpg
예시:
/2018-12-17/stream_name-screenshot-19-06-59-640x352.jpg
해당 필드는 사용자 정의 연결한 COS CDN 도메인 이름에 사용할 수 있으며, CDN 도메인이 필요하지 않은 경우 직접 pic_full_url을 사용할 수 있습니다.
pic_full_url 상세 정보:
http://COS 도메인+pic_url
예시:
http://testbucket-1234567890.cos.region.myqcloud.com/2018-12-17/stream_name-screenshot-19-06-59-640x352.jpg
화면 캡처 콜백 예시
{
"event_type":200,
"stream_id":"stream_name",
"channel_id":"stream_name",
"create_time":1545030273,
"file_size":7520,
"width":640,
"height":352,
"pic_url":"/2018-12-17/stream_name-screenshot-19-06-59-640x352.jpg",
"pic_full_url":"http://testbucket-1234567890.cos.region.myqcloud.com/2018-12-17/stream_name-screenshot-19-06-59-640x352.jpg",
"sign":"ca3e25e5dc17a6f9909a9ae7281e300d",
"t":1545030873
}