Custom 화질 생성

Prev Next

Classic/VPC 환경에서 이용 가능합니다.

System 화질 이외의 별도 화질이 필요한 경우, 원하는 화질을 정의하여 Custom 화질을 생성합니다.

요청

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

메서드 URI
POST /api/v2/qualityProfiles

요청 헤더

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

요청 바디

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

필드 타입 필수 여부 설명
name String Required 화질 이름
  • 영문자, 숫자, 특수 문자 '-'를 허용하며, 3~20자 이내로 입력
  • 이름 중복 가능
type String Required 화질 타입
  • NORMAL | AUDIO
    • NORMAL: 비디오, 오디오 출력
    • AUDIO: 오디오 전용 출력
video Object Conditional 비디오 설정 정보
  • typeNORMAL인 경우, 필수 입력
video.codec String Conditional 비디오 코덱 포맷
  • H264 (유효 값)
video.profile String Conditional 비디오 코덱 프로필
  • BASELINE | MAIN | HIGH
    • BASELINE: 기본 옵션(저사양 단말용, 최소 기능 제공)
    • MAIN: HD 권장 옵션
    • HIGH: Full HD 권장 옵션
  • 비디오의 사용 용도에 맞게 H.264 코덱의 특정 기술을 사용할 수 있도록 미리 정의해 둔 표준 명세
  • video.widthxvideo.height가 1280x720보다 작은 경우, BASELINE만 입력 가능
video.level Integer Conditional 비디오 코덱 레벨
  • -1: AUTO (유효 값)
  • 재생(디코딩)에 필요한 하드웨어의 성능 한계치를 미리 정의해 둔 표준 명세
video.width Integer Conditional 출력 비디오의 너비(픽셀)
  • 128~1920
  • 짝수만 입력 가능
video.height Integer Conditional 출력 비디오의 높이(픽셀)
  • 96~1920
  • 짝수만 입력 가능
video.fps Float Conditional 초당 프레임 수(fps)
  • 1~60
video.bitrate Integer Conditional 비디오 스트림의 비트레이트(bps)
  • 1~204800000
video.videoH264ParamRefFrames Integer Optional H.264 참조 프레임 수
  • 1 (유효 값)
video.rateControl String Optional 비트레이트 배분 방식
  • VBR (기본값) | CBR
    • VBR: 가변 비트레이트(Variable Bitrate)
    • CBR: 고정 비트레이트(Constant Bitrate)
video.bframes Integer Optional B-프레임(양방향 예측 프레임) 수
  • 0~4 (기본값: 0)
  • video.widthxvideo.height가 1280x720 미만인 경우, 0~2 입력 가능
  • video.widthxvideo.height가 854x480 미만인 경우, 0만 입력 가능
video.bypass Boolean Optional 비디오 스트림 바이패스 여부
  • true | false (기본값)
    • true: 원본 스트림 그대로 사용(pass-through)
    • false: 설정 정보에 맞춰 트랜스코딩
video.orientation String Optional 비디오 방향 전환 설정
  • FIX | FREE
    • FIX: 고정
    • FREE: 전환 가능
audio Object Required 오디오 설정 정보
audio.codec String Required 오디오 코덱 포맷
  • AAC | MP3
audio.profile String Conditional 오디오 코덱 프로필
  • LC: AAC-LC (유효 값)
  • audio.codecAAC인 경우에만 입력 가능하며, 필수 입력
audio.samplerate Integer Required 오디오 샘플링 레이트(Hz)
  • audio.codecAAC인 경우, 입력 가능 값: 8000 | 11025 | 12000 | 16000 | 22050 | 24000 | 32000 | 44100 (기본값) | 48000 | 64000 |88200 | 96000
  • audio.codecMP3인 경우, 입력 가능 값: 8000 | 11025 | 12000 | 16000 | 22050 | 24000 |32000 | 44100 (기본값) | 48000
  • 초당 샘플링 수
audio.channels Integer Required 오디오 채널 수
  • audio.codecAAC인 경우, 입력 가능 범위: 0~8 (기본값: 0)
  • audio.codecMP3인 경우, 입력 가능 범위: 0~2 (기본값: 0)
audio.bitrate Integer Required 오디오 스트림의 비트레이트(Kbps)
  • 16~320
audio.bypass Boolean Optional 오디오 스트림 바이패스 여부
  • true | false (기본값)
    • true: 원본 스트림 그대로 사용(pass-through)
    • false: 설정 정보에 맞춰 트랜스코딩

요청 예시

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

curl --location --request POST 'https://livestation.apigw.ntruss.com/api/v2/qualityProfiles' \
--header 'x-ncp-apigw-timestamp: {Timestamp}' \
--header 'x-ncp-iam-access-key: {Access Key}' \
--header 'x-ncp-apigw-signature-v2: {API Gateway Signature}' \
--header 'Content-Type: application/json' \
--header 'x-ncp-region_code: KR' \
--data '{
    "name": "quality000",
    "type": "NORMAL",
    "video": {
        "codec": "H264",
        "profile": "HIGH",
        "level": -1,
        "width": 1920,
        "height": 1080,
        "fps": 60,
        "bitrate": 204800000,
        "videoH264ParamRefFrames": 1,
        "rateControl": "VBR",
        "bframes": 4,
        "bypass": false
    },
    "audio": {
        "codec": "AAC",
        "profile": "LC",
        "samplerate": 44100,
        "channels": 2,
        "bitrate": 320,
        "bypass": false
    }
}'

응답

응답 형식을 설명합니다.

응답 바디

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

필드 타입 필수 여부 설명
content Object - 응답 결과
content.disabled Boolean - 화질 비활성화 여부
  • true | false
    • true: 비활성
    • false: 활성
content.id Integer - 화질 아이디
content.status String - 화질 상태
  • CREATED: 생성 완료 (유효 값)
content.createdTime Integer - 화질 생성 일시(밀리초)
  • Unix Timestamp 형식
content.genType String - 설정 분류
  • CUSTOM: 직접 생성 (유효 값)
content.name String - 화질 이름
content.type String - 화질 타입
  • NORMAL | AUDIO
    • NORMAL: 비디오, 오디오 출력
    • AUDIO: 오디오 전용 출력
content.video Object - 비디오 설정 정보
  • content.typeAUDIO인 경우, 미표시
content.video.fps Float - 초당 프레임 수(fps)
content.video.bitrate Integer - 비디오 스트림의 비트레이트(bps)
content.video.bframes Integer - B-프레임(양방향 예측 프레임) 수
content.video.level Integer - 비디오 코덱 레벨
  • -1: AUTO (유효 값)
  • 재생(디코딩)에 필요한 하드웨어의 성능 한계치를 미리 정의해 둔 표준 명세
content.video.width Integer - 출력 비디오의 너비(픽셀)
content.video.height Integer - 출력 비디오의 높이(픽셀)
content.video.bypass Boolean - 비디오 스트림 바이패스 여부
  • true | false
    • true: 원본 스트림 그대로 사용(pass-through)
    • false: 설정 정보에 맞춰 트랜스코딩
content.video.codec String - 비디오 코덱 포맷
  • H264 (유효 값)
content.video.orientation String - 비디오 방향 전환 설정
  • FIX | FREE
    • FIX: 고정
    • FREE: 전환 가능
content.video.profile String - 비디오 코덱 프로필
  • BASELINE | MAIN | HIGH
    • BASELINE: 기본 옵션(저사양 단말용, 최소 기능 제공)
    • MAIN: HD 권장 옵션
    • HIGH: Full HD 권장 옵션
  • 비디오의 사용 용도에 맞게 H.264 코덱의 특정 기술을 사용할 수 있도록 미리 정의해 둔 표준 명세
content.video.rateControl String - 비트레이트 배분 방식
  • VBR | CBR
    • VBR: 가변 비트레이트(Variable Bitrate)
    • CBR: 고정 비트레이트(Constant Bitrate)
content.video.videoH264ParamRefFrames Integer - H.264 참조 프레임 수
  • 1 (유효 값)
content.audio Object - 오디오 설정 정보
content.audio.codec String - 오디오 코덱 포맷
  • AAC | MP3
content.audio.profile String - 오디오 코덱 프로필
  • LC: AAC-LC (유효 값)
content.audio.samplerate Integer - 오디오 샘플링 레이트(Hz)
  • 초당 샘플링 수
content.audio.channels Integer - 오디오 채널 수
content.audio.bitrate Integer - 오디오 스트림의 비트레이트(Kbps)
content.audio.bypass Boolean - 오디오 스트림 바이패스 여부
  • true | false
    • true: 원본 스트림 그대로 사용(pass-through)
    • false: 설정 정보에 맞춰 트랜스코딩

응답 상태 코드

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

응답 예시

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

{
    "content": {
        "disabled": false,
        "id": ****,
        "status": "CREATED",
        "createdTime": 1755134603531,
        "genType": "CUSTOM",
        "name": "quality000",
        "type": "NORMAL",
        "video": {
            "fps": 60.0,
            "bitrate": 204800000,
            "bframes": 4,
            "level": -1,
            "width": 1920,
            "height": 1080,
            "bypass": false,
            "codec": "H264",
            "profile": "HIGH",
            "rateControl": "VBR",
            "videoH264ParamRefFrames": 1
        },
        "audio": {
            "codec": "AAC",
            "profile": "LC",
            "samplerate": 44100,
            "channels": 2,
            "bitrate": 320,
            "bypass": false
        }
    }
}