StreamPackage API Reference
On this page
StreamPackage의 API 서비스 코드는 mdp, API 버전은 2020-05-27입니다. 기본 순서는 채널 생성 → 입력 확인 → 엔드포인트 생성 → 재생 확인 → CDN 연결입니다.
호출 규격
| 항목 | 값 |
|---|---|
| Endpoint | POST https://mdp.tencentcloudapi.com |
| Action | 아래 API 목록 참조 |
| 요청 서명 | 공식 SDK / TCCLI의 Tencent Cloud API 3.0 서명 사용 |
기본 정보
| 항목 | 값 |
|---|---|
| API 서비스 코드 | mdp |
| API 버전 | 2020-05-27 |
| 인증 | Tencent Cloud API 3.0 / TC3-HMAC-SHA256 |
| 호출 도구 | Tencent Cloud SDK / TCCLI |
실행 전 준비
TCCLI 인증과 권한을 설정합니다. 예제 리전은 ap-seoul이며 REPLACE_로 시작하는 값은 실제 값으로 변경합니다. JSON 파일 안의 불리언은 true와 false를 사용합니다.
API 목록과 요청 파라미터
| Action | 동작 |
|---|---|
CreateStreamPackageChannel |
생성 |
DescribeStreamPackageChannel |
조회 |
CreateStreamPackageChannelEndpoint |
생성 |
BindNewLVBDomainWithChannel |
설정 변경 |
응답과 실행 흐름
생성 응답에서 반환된 리소스 ID를 보관하고 조회 API로 상태를 확인하십시오. 생성 요청의 성공과 실제 입력 수신·출력 전송의 성공은 구분합니다. 다음 단계는 해당 리소스의 상태를 확인한 뒤 실행하십시오.
오류와 호출 제한
연결 확인
| 증상 | 먼저 확인할 항목 |
|---|---|
| Unknown option | 해당 Action에 필드가 있는지, TCCLI 버전 |
| JSON | 문자열 인용, 배열 / 객체 구조, 소문자 불린 |
엔드포인트 403 |
IP 허용 목록, AuthKey 헤더, CDN 오리진 요청 |
| CDN에서만 결과 확인 | DNS, TLS, CDN 인증과 오리진 접근 정책 |
| 목록은 열리지만 정지 | 입력 지속 여부, 캐시 응답, 세그먼트 갱신 |
Action, 리전, RequestId, 응답 코드와 발생 시각을 기록합니다. URL 서명 / 비밀번호 / 인증 키를 공유 로그에서 제거합니다.
요청 예제
1. 채널 생성 / 조회
tccli mdp CreateStreamPackageChannel --region ap-seoul --Name demo_package --Protocol HLS생성 응답의 채널 ID를 확인합니다.
tccli mdp DescribeStreamPackageChannel --region ap-seoul --Id REPLACE_CHANNEL_ID조회 응답에서 입력 주소와 엔드포인트를 확인합니다. 기본 생성 요청은 필수 항목으로 구성합니다.
2. HLS 엔드포인트 생성
다음 JSON을 package-endpoint.json으로 저장합니다. IP는 문서용 주소이므로 실제 허용할 요청 출발지로 바꿉니다. CDN을 통해 접근한다면 CDN의 오리진 요청 출발지와 접근 제어 설계를 먼저 확인해야 합니다.
{
"Id": "REPLACE_CHANNEL_ID",
"Name": "demo_hls",
"Protocol": "HLS",
"Manifest": "main",
"AuthInfo": {
"WhiteIpList": [
"203.0.113.10/32"
],
"BlackIpList": [],
"AuthKey": ""
},
"TimeShiftEnable": false
}tccli mdp CreateStreamPackageChannelEndpoint --region ap-seoul --cli-input-json file://package-endpoint.json이 예제는 허용 IP 기반 접근 제어를 사용합니다. AuthKey 방식은 요청의 X-TENCENT-PACKAGE 헤더에 적용하며 입력 HTTP 인증은 별도로 설정합니다.
생성된 URL은 API 응답이나 채널 상세 조회에서 가져옵니다. 타임시프트 / CMAF / DRM은 엔드포인트 구성에서 지원 조건을 확인한 뒤 추가합니다.
3. 재생 검증
StreamLive 또는 송출 시스템에서 채널로 신호를 보낸 뒤, 엔드포인트 플레이리스트가 갱신되는지 확인합니다. 하위 플레이리스트와 세그먼트 요청, 영상 / 오디오 재생까지 확인해야 기본 연결이 완료됩니다.
4. CDN 연결
CSS 활성화, 서비스 간 권한, 재생 도메인 준비를 완료한 후 실행합니다. play.example.com은 실제 보유하고 설정한 도메인으로 변경합니다.
tccli mdp BindNewLVBDomainWithChannel --region ap-seoul \
--ChannelId REPLACE_CHANNEL_ID --LVBDomain play.example.com연결 성공 이후에도 CNAME, HTTPS 인증서, 오리진 접근 제어, 플레이리스트 / 세그먼트 재생을 확인합니다. 자세한 순서는 CSS CDN 연결을 참고합니다.
결과·리소스 관리
변경 / 삭제 API
| 용도 | Action | 주의 사항 |
|---|---|---|
| 채널 수정 | ModifyStreamPackageChannel |
현재 설정을 먼저 조회 |
| 엔드포인트 수정 | ModifyStreamPackageChannelEndpoint |
정확한 채널 ID와 엔드포인트 URL 지정, 기존 인증 설정 보존 |
| 입력 인증 변경 | ModifyStreamPackageChannelInputAuthInfo |
송출 측 인증 정보와 함께 변경 |
| CDN 연결 해제 | UnbindCdnDomainWithChannel |
운영 도메인 재생 영향 확인 |
| 엔드포인트 삭제 | DeleteStreamPackageChannelEndpoints |
이용 중인 재생 URL인지 확인 |
| 채널 삭제 | DeleteStreamPackageChannels |
연결된 엔드포인트를 먼저 정리 |
현재 인증 설정을 조회한 뒤 수정할 항목을 적용합니다. 생성 / 인증 변경 / 삭제는 각 단계의 결과를 확인하며 진행합니다.
SSAI와 Harvest의 구분
SSAI는 ADS, 광고 마커, 세션, 광고 에셋 전달 경로를 포함하는 별도 구성입니다. 일반 HLS 재생을 확인한 뒤 해당 SSAI 구성 방식에 맞는 API를 선택합니다.
Harvest Job은 보관된 과거 구간을 COS로 저장하는 작업입니다. 대상 / 시간 범위 / COS 권한을 먼저 확인하고 Harvest Job의 절차를 따릅니다.
