WAND wiki
최근 문서

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

StreamLinkLast Updated 2026-09-30

StreamLink API Reference

On this page

StreamLink의 API 서비스 코드는 mdc, API 버전은 2020-08-28입니다. 다음 예제는 서울 리전의 RTMP 입력을 StreamLive로 전달하는 기본 구성을 설명합니다.

호출 규격

항목 값
Endpoint POST https://mdc.tencentcloudapi.com
Action 아래 API 목록 참조
요청 서명 공식 SDK / TCCLI의 Tencent Cloud API 3.0 서명 사용

기본 정보

항목 값
API 서비스 코드 mdc
API 버전 2020-08-28
인증 Tencent Cloud API 3.0 / TC3-HMAC-SHA256
호출 도구 Tencent Cloud SDK / TCCLI

실행 전 확인

  • TCCLI 인증을 안전하게 설정하고 해당 리소스의 생성 / 조회 / 시작 / 정지 권한을 확인합니다.
  • REPLACE_로 시작하는 값은 실제 리소스 값으로 변경합니다.
  • 203.0.113.10/32는 문서용 IP입니다. 실제 송출 장비의 공인 IP로 바꿉니다.
  • 생성 명령은 새 리소스를 만듭니다. 같은 명령을 반복 실행하기 전에 기존 생성 결과를 조회합니다.

API 목록과 요청 파라미터

Action 동작
CreateStreamLinkFlow 생성
CreateStreamLinkInput 생성
DescribeStreamLinkFlow 조회
CreateStreamLinkOutputInfo 생성
StartStreamLinkFlow 시작
StopStreamLinkFlow 정지

응답과 실행 흐름

생성 응답에서 반환된 리소스 ID를 보관하고 조회 API로 상태를 확인하십시오. 생성 요청의 성공과 실제 입력 수신·출력 전송의 성공은 구분합니다. 다음 단계는 해당 리소스의 상태를 확인한 뒤 실행하십시오.

오류와 호출 제한

연결 확인

증상 확인 사항
InvalidParameter.MaxBandwidth bps 단위와 허용값
Flow ID 파싱 결과 확인 원시 HTTP와 CLI 응답의 래퍼 차이, Info.FlowId 위치
생성 요청 후 결과 불명 같은 생성 요청을 반복하기 전에 목록과 상세 조회
입력 연결 결과 확인 허용 IP, 입력 주소, AppName / Stream Key
입력은 정상인데 출력 — 출력 유형 / 목적지, 수신 측 상태, 출력 연결 로그

요청 문의에는 Action, 리전, 응답 코드, RequestId, 발생 시각을 전달합니다. 인증 값은 별도 보관합니다.

요청 예제

1. Flow 생성

LANGUAGE
tccli mdc CreateStreamLinkFlow --region ap-seoul \
  --FlowName demo_flow \
  --MaxBandwidth 20000000

MaxBandwidth는 bps 단위의 필수값입니다. 공식 API의 허용값은 10,000,000 / 20,000,000 / 50,000,000입니다. Event에 연결하려면 해당 Event ID를 EventId로 지정합니다.

공식 원시 HTTP 응답의 식별자 경로는 Response.Info.FlowId입니다. 다음은 구조 설명용 응답입니다.

LANGUAGE
{
  "Response": {
    "Info": {
      "FlowId": "REPLACE_FLOW_ID",
      "FlowName": "demo_flow",
      "MaxBandwidth": 20000000,
      "State": "IDLE",
      "InputGroup": [],
      "OutputGroup": []
    },
    "RequestId": "REPLACE_REQUEST_ID"
  }
}

TCCLI 출력은 Response 래퍼를 제외할 수 있으므로 실제 출력 구조를 확인합니다.

2. 입력 추가

LANGUAGE
tccli mdc CreateStreamLinkInput --region ap-seoul \
  --FlowId REPLACE_FLOW_ID \
  --InputGroup '[{"InputName":"demo_input","Protocol":"RTMP","AllowIpList":["203.0.113.10/32"]}]'

API의 RTMP는 입력 유형입니다. 콘솔 RTMP_PUSH와 연결 방향을 확인하고 송출 IP를 허용 목록에 등록합니다.

생성 후 상세 조회에서 입력 주소와 RTMP 설정을 확인합니다.

LANGUAGE
tccli mdc DescribeStreamLinkFlow --region ap-seoul --FlowId REPLACE_FLOW_ID

RTMP 송출 URL은 입력 응답의 IP / 포트 / AppName / StreamKey를 사용합니다. 프로그램이 서버 URL과 Stream Key를 따로 받으면 나누어 입력합니다.

3. StreamLive로 보내는 출력 추가

다음 JSON을 link-output.json으로 저장합니다. Flow ID, 목적지 URL, Stream Key는 실제 StreamLive 입력 정보로 변경합니다.

LANGUAGE
{
  "FlowId": "REPLACE_FLOW_ID",
  "Output": {
    "OutputName": "demo_to_live",
    "Protocol": "RTMP",
    "OutputRegion": "ap-seoul",
    "RTMPSettings": {
      "Destinations": [
        {
          "Url": "rtmp://REPLACE_INPUT_HOST/REPLACE_APP_NAME",
          "StreamKey": "REPLACE_STREAM_KEY"
        }
      ]
    }
  }
}
LANGUAGE
tccli mdc CreateStreamLinkOutputInfo --region ap-seoul --cli-input-json file://link-output.json

이 API는 FlowId로 지정한 Flow의 출력을 생성합니다. 생성 후 상세 조회에서 OutputGroup에 목적지가 들어 있는지 확인합니다.

4. 시작과 확인

LANGUAGE
tccli mdc StartStreamLinkFlow --region ap-seoul --FlowId REPLACE_FLOW_ID

Flow 실행 상태, 입력 비트레이트, 출력 비트레이트, StreamLive 입력 수신을 순서대로 확인합니다. 제어 API의 성공 응답은 미디어 전송 성공과 다릅니다.

5. 종료

테스트가 끝나면 대상 Flow를 확인하고 정지합니다.

LANGUAGE
tccli mdc StopStreamLinkFlow --region ap-seoul --FlowId REPLACE_FLOW_ID

입력 / 출력 노드 실행과 전송에는 요금이 발생할 수 있습니다.

엔진 카탈로그·관련 문서

참고 문서