채널 생성

Prev Next

방송 송출을 위한 라이브 채널을 생성합니다.

요청

요청 형식을 설명합니다. 요청 형식은 다음과 같습니다.

메서드 URI
POST /api/fin-v2/channels

요청 헤더

Live Station API에서 공통으로 사용하는 헤더에 대한 정보는 Live Station 요청 헤더를 참조해 주십시오.

요청 바디

요청 바디에 대한 설명은 다음과 같습니다.

필드 타입 필수 여부 설명
channelName String Required 채널 이름
  • 한글, 영문자, 숫자, 특수 문자 '_'를 허용하며, 3~20자 이내로 입력
envType String Optional 채널 타입
  • REAL (기본값) | DEV | STAGE
  • 적용할 서비스 환경 구분자
outputProtocol String Optional Output Protocol 설정
  • HLS (기본값)| LL_HLS | HLS,DASHul>
  • HLS: 안정적이고 호환성 높은 HLS 스트리밍을 이용하기 위한 옵션
  • LL_HLS: CMAF 이용한 저지연 HLS 스트리밍을 위한 옵션
  • HLS,DASH: 일반 HLS와 Dash 모두 스트리밍 가능한 옵션
cdn Object Required CDN 설정
cdn.createCdn Boolean Required CDN 신규 생성 여부
  • true | false
    • true: 신규 생성
    • false: 보유 CDN 사용
cdn.cdnType String Required CDN 유형
  • CDN_PLUS
cdn.cdnInstanceNo Integer Conditional CDN 인스턴스 아이디
  • cdn.createCdnfalse인 경우, 필수 입력
qualitySetId Integer Required 화질 설정 아이디
useDvr Boolean Required 타임머신 설정 여부
  • true | false
    • true: 설정
    • false: 설정 안 함
  • 설정 시 송출 중인 라이브 방송을 되돌려 볼 수 있음
immediateOnAir Boolean Optional 송출 즉시 자동 녹화 설정 여부
  • true | false
    • true: 자동
    • false: 수동
timemachineMin Integer Conditional 타임머신 허용 범위(분)
  • 360 (유효 값)
  • useDvrtrue인 경우, 필수 입력
record Object Required 녹화 저장 정보
record.format String Conditional 자동 저장 녹화 타입
  • MP4 | HLS | ALL
  • 녹화 파일 포맷 지정
  • record.typeAUTO_UPLOAD인 경우, 필수 입력
record.type String Required 녹화 저장 설정
  • NO_RECORD | AUTO_UPLOAD | MANUAL_UPLOAD
    • NO_RECORD: 녹화 안 함
    • AUTO_UPLOAD: 자동 저장
    • MANUAL_UPLOAD: 임시 저장
record.bucketName String Conditional 녹화 파일 저장 버킷 이름
  • ListBuckets 참조
  • record.typeAUTO_UPLOAD인 경우, 필수 입력
record.filePath String Conditional 저장 상세 경로
  • /로 시작
  • record.typeAUTO_UPLOAD인 경우, 필수 입력
record.accessControl String Conditional 녹화 파일 저장 버킷 공개 범위
  • PRIVATE (기본값) | PUBLIC_READ
    • PRIVATE: 비공개
    • PUBLIC_READ: 공개
  • record.typeAUTO_UPLOAD인 경우, 필수 입력
isStreamFailOver Boolean Optional 송출 이중화 설정 여부
  • true | false
    • true: 사용
    • false: 사용 안 함
  • 사용 시 반드시 메인 스트림 먼저 송출
참고
  • 송출 이중화 설정을 사용 하실 경우, 반드시 메인 스트림을 먼저 송출 하셔야 합니다.
  • Low Latency 용 화질 세트를 활용하여 채널 생성할 경우, LL-HLS 채널을 생성하실 수 있습니다.
  • LL-HLS 이용 시 신규 CDN을 생성을 권장합니다.
  • 기존 생성된 CDN을 사용하실 경우, 기존 생성된 CDN 갱신이 필요합니다. CDN 갱신 방법은 사용자 가이드를 참고해주세요.
  • 원활한 LL-HLS 채널 사용을 위해 키프레임을 1초로 설정하시길 권장합니다. 자세한 송출 가이드는 사용자 가이드 를 참고하세요.

요청 예시

요청 예시는 다음과 같습니다.

curl --location --request POST 'https://livestation.apigw.ntruss.com/api/fin-v2/channels' \
--header 'x-ncp-apigw-timestamp: {Timestamp}' \
--header 'x-ncp-iam-access-key: {Access Key}' \
--header 'x-ncp-apigw-signature-v2: {API Gateway Signature}' \
--header 'x-ncp-region_code: FKR' \
--header 'Content-Type: application/json' \
--data '{
    "channelName": "testchannel",
    "envType": "DEV",
    "outputProtocol": "LL_HLS",
    "cdn": {
        "createCdn": true,
        "cdnType": "CDN_PLUS",
        "profileId": 4207,
        "regionType": "KOREA"
    },
    "qualitySetId": 2585,
    "useDvr": true,
    "immediateOnAir": true,
    "timemachineMin": 360,
    "record": {
        "format": "MP4",
        "type": "AUTO_UPLOAD",
        "bucketName": "mybucket",
        "filePath": "/livestation",
        "accessControl": "PRIVATE"
    },
    "isStreamFailOver": true
}'

응답

응답 형식을 설명합니다.

응답 바디

응답 바디에 대한 설명은 다음과 같습니다.

필드 타입 필수 여부 설명
content Object - 응답 결과
content.channelName String - 채널 이름
content.cdn Object - CDN 설정
content.cdn.createCdn Boolean - CDN 신규 생성 여부
  • true | false
    • true: 신규 생성
    • false: 보유 CDN 사용
content.cdn.cdnType String - CDN 유형
  • CDN_PLUS
content.qualitySetId Integer - 화질 설정 아이디
content.useDvr Boolean - 타임머신 설정 여부
  • true | false
    • true: 설정
    • false: 설정 안 함
content.immediateOnAir Boolean - 송출 즉시 자동 녹화 설정 여부
  • true | false
    • true: 자동
    • false: 수동
content.timemachineMin Integer - 타임머신 허용 범위(분)
content.channelId String - 채널 아이디
content.uploadPath String - 녹화 파일 업로드 경로
content.envType String - 채널 타입
  • DEV | STAGE | REAL
content.record Object - 녹화 저장 정보
content.record.type String - 녹화 저장 설정
  • NO_RECORD | AUTO_UPLOAD | MANUAL_UPLOAD
    • NO_RECORD: 녹화 안 함
    • AUTO_UPLOAD: 자동 저장
    • MANUAL_UPLOAD: 임시 저장
content.record.bucketName String - 녹화 파일 저장 버킷 이름
content.record.filePath String - 저장 상세 경로
content.record.format String - 자동 저장 녹화 타입
  • MP4 | HLS | ALL
content.record.accessControl String - 녹화 파일 저장 버킷 공개 범위
  • PRIVATE | PUBLIC_READ
    • PRIVATE: 비공개
    • PUBLIC_READ: 공개
content.outputProtocol String - Output Protocol
content.origin Object - 원본 정보
content.origin.originDomain String - 원본 도메인
content.origin.originPath String - 원본 경로
content.isStreamFailOver Boolean - 송출 이중화 설정 여부
  • true | false
    • true: 사용
    • false: 사용 안 함

응답 상태 코드

Live Station API에서 공통으로 사용하는 응답 상태 코드에 대한 정보는 Live Station 응답 상태 코드를 참조해 주십시오.

응답 예시

응답 예시는 다음과 같습니다.

{
    "content": {
        "channelName": "testchannel",
        "cdn": {
            "createCdn": true,
            "cdnType": "CDN_PLUS",
            "cdnInstanceNo": 1***2,
        },
        "qualitySetId": 2585,
        "useDvr": true,
        "immediateOnAir": true,
        "timemachineMin": 360,
        "channelId": "ls-20250818******-UbUBe",
        "uploadPath": "/mybucket/livestation",
        "envType": "DEV",
        "record": {
            "type": "AUTO_UPLOAD",
            "bucketName": "mybucket",
            "filePath": "/livestation",
            "format": "MP4",
            "accessControl": "PRIVATE"
        },
        "outputProtocol": "LL_HLS",
        "origin": {
            "originDomain": "*****.video.media.ntruss.com",
            "originPath": "27***85"
        },
        "isStreamFailOver": true
    }
}