인코딩 옵션 생성
    • PDF

    인코딩 옵션 생성

    • PDF

    기사 요약

    VOD Station은 인코딩 옵션을 생성하기 위한 API를 제공하며 생성한 인코딩 옵션 조회를 위해 인코딩 옵션 목록 조회 API인코딩 옵션 정보 조회 API를 제공합니다.

    요청

    POST https://vodstation.apigw.ntruss.com/api/v2/encoding-option
    

    요청 헤더

    헤더명설명
    x-ncp-region_code네이버 클라우드 플랫폼 region code
    x-ncp_region_code:{Region Code}
    x-ncp-apigw-timestamp1970년 1월 1일 00:00:00 협정 세계시(UTC)부터의 경과 시간을 밀리초(Millisecond)로 표현
    API Gateway 서버와 시간 차가 5분 이상 나는 경우 유효하지 않은 요청으로 간주
    x-ncp-apigw-timestamp:{Timestamp}
    x-ncp-iam-access-key네이버 클라우드 플랫폼 포털에서 발급받은 Access Key ID 값
    x-ncp-iam-access-key:{Sub Account Access Key}
    x-ncp-apigw-signature-v2Access Key ID 값과 Secret Key로 암호화한 서명
    x-ncp-apigw-signature-v2:{API Gateway Signature}
    Content-TypeRequest body content type을 application/json으로 지정
    Content-Type: application/json

    요청 바디

    API 요청 시 필드명의 대소문자 구분이 필요합니다.

    필드명필수 여부타입제약 사항기본 값설명
    nameYesString영문, 숫자, 쌍점( : ), 붙임표( - ), 밑줄 문자( _ ) 허용, 3자 이상 20자 이하생성할 사용자 지정 인코딩 옵션의 이름
    formatYesStringMP4변환된 미디어 파일 컨테이너 포맷
    encodingOptionTypeNoStringNORMAL, AUDIONORMAL- 사용자 지정 인코딩 옵션의 타입
    비디오와 오디오를 포함하는 NORMAL 프리셋 혹은 오디오 스트림만 포함하는 AUDIO 프리셋 선택
    audioYesObject트랜스코딩 오디오 옵션 설정 객체
    audio.codecYesStringAAC오디오 코덱 설정
    audio.channelYesStringAUTO, 1, 2- 출력 오디오의 채널 설정
    AUTO 설정 시 원본의 오디오 채널을 사용
    참고: 인풋 미디어 파일의 오디오 채널과 다른 설정으로 인코딩 시 볼륨의 변화가 발생 할 수 있음
    audio.bitrateYesInteger16~320 범위의 정수, 단위: Kbps트랜스코딩할 오디오 스트림의 비트 전송률 설정
    audio.samplingRateYesIntegerAUTO(-2), 22050 , 32000, 44100, 48000 단위: Hz출력 오디오 샘플링 레이트 설정 AUTO 설정 시 원본의 오디오 샘플링 레이트를 사용
    videoYesObject- 트랜스코딩 비디오 옵션 설정 객체
    encodingOptionType이 AUDIO 일 경우 video 객체 생략
    video.codecYesStringAVC비디오 코덱 설정
    AVC (H.264) 지원
    video.codecOptionsYesObject비디오 코덱 상세 옵션 설정 객체
    video.codecOptions.profileYesStringBASELINE, MAIN, HIGHVideo Codec Profile은 영상의 사용 용도에 맞게 H.264 코덱의 특정 기술을 사용할 수 있도록 미리 정의해 둔 표준 명세
    video.codecOptions.levelYesString1, 1b, 1.1, 1.2, 1.3, 2.1, 2.2, 3.1, 3.2, 4.1, 4.2, 5.1, 5.2Video Codec Level은 영상을 재생하는 단말의 재생기(디코더)가 어느정도 자원을 필요로 하는지 정해놓은 표준 명세
    video.bitrateYesIntegerbitrate > 0 단위: Kbps비디오 스트림의 비트 전송률 설정 동영상의 화질을 결정하는 매우 중요한 요소이며 1초 분량의 동영상을 구성하는 데이터의 크기를 설정
    video.widthYesIntegerAUTO(-2), 96~4096 범위의 정수 단위: 픽셀출력 비디오의 가로 길이 width 만 AUTO 일 경우 height 는 고정되며 width 는 본 영상의 비율에 맞춰 변환
    video.heightYesIntegerAUTO(-2), 96~4096 범위의 정수 단위: 픽셀출력 비디오의 세로 길이 height 만 AUTO 일 경우 width 는 고정되며 height 는 본 영상의 비율에 맞춰 변환
    video.framerateYesDoubleAUTO(-2), 10, 15, 23.97, 24, 29.97, 30, 50, 60초당 프레임 수를 설정 출력 비디오 스트림에 초당 몇 개의 프레임을 보여 줄지 설정
    video.maxFramerateNoInteger10~60 사이 정수값video.framerate가 AUTO일때만 사용하며, 최대 framerate를 설정
    video.keyframeIntervalYesInteger1~100 범위의 정수값키프레임 간격 설정 비디오에 키 프레임 생성되는 간격 (단위: 초)
    video.rateControlYesStringAUTO,ABR, CRF, CBR
    video.pass 가 2-Pass 인 경우, ABR 만 허용
    ABR- 비디오 변환시 비트레이트 배분 방식
    CBR: 고정 비트레이트로 모든 프레임에 비트레이트를 같게 변환 비트레이트가 고정되어 결과물 용량을 예측하기 쉬우나 ABR, CRF 대비 품질이 낮음
    CRF: 압축 효율이 좋은편이며 인코딩 전 비트레이트와 파일크기를 지정할 수 없음
    ABR: 가용 비트레이트로 평균 비트레이트를 유지하며 필요 비트레이트에 따라 가변적으로 변환
    video.passYesString1-Pass, 2-Pass- 비디오 변환 시 사용할 인코딩 방식
    1-Pass에 비해 2-Pass는 주어진 bitrate 를 효율적으로 활용하나 인코딩 소요 시간이 길어짐

    응답

    필드명타입설명비고
    errorObject요청 실패 시 응답
    오류 응답 코드 및 메시지
    error.codeInteger오류 응답 코드
    error.messageString오류 응답 메시지
    contentObjectVOD Station OPEN API 응답 객체
    content.disabledBooleansubaccount 제공 필드
    해당 리소스가 subaccount에서 활성 여부
    content.idString인코딩 옵션 ID
    content.nameString인코딩 옵션의 이름
    content.formatString변환된 미디어 파일 컨테이너 포맷
    content.encodingOptionTypeString인코딩 옵션의 타입
    content.audioObject트랜스코딩 오디오 옵션 설정 객체
    content.audio.codecString오디오 코덱 설정
    content.audio.channelInteger출력 오디오의 채널 설정
    content.audio.bitrateInteger트랜스코딩할 오디오 스트림의 비트 전송률 설정 (단위 : Kbps)
    content.audio.samplingRateInteger출력 오디오 샘플링 레이트 (단위 : Hz)
    content.videoObject트랜스코딩 비디오 옵션 설정 객체
    content.video.codecString비디오 코덱 설정
    content.video.codecOptionsObject비디오 코덱 상세옵션 설정 객체
    content.video.codecOptions.profileString설정된 Video Codec Profile
    content.video.codecOptions.levelString설정된 Video Codec Level
    content.video.bitrateInteger비디오 스트림의 비트 전송률 (단위 : Kbps)
    content.video.widthInteger출력 비디오의 너비
    content.video.heightInteger출력 비디오의 높이
    content.video.framerateDouble초당 프레임 수
    content.video.keyframeIntervalInteger비디오에 키 프레임이 생성되는 간격 (단위 : 초)
    content.video.rateControlString비트레이트 배분 방식
    content.defaultSetBoolean시스템 제공 프리셋 여부

    예시

    요청 예시

    POST https://vodstation.apigw.ntruss.com/api/v2/encoding-option
    
    POST /api/v2/encoding-option
    HOST: vodstation.apigw.ntruss.com
    Content-Type: application/json
    x-ncp-region_code:KR
    x-ncp-apigw-timestamp:1521787414578
    x-ncp-iam-access-key:6uxz1nKkcYwUjWRG5Q1V7NsW0i5jErlu2NjBXXgy
    x-ncp-apigw-signature-v2:iJFK773KH0WwQ79PasqJ+ZGixtpDQ/abS57WGQdld2M=
    
    Reqeust body
    {
      "audio": {
        "bitrate": 192,
        "channel": 2,
        "codec": "AAC",
        "samplingRate": 44100
      },
      "encodingOptionType": "NORMAL",
      "format": "MP4",
      "name": "basic-enc-option",
      "video": {
        "bitrate": 5000,
        "codec": "AVC",
        "codecOptions": {
          "level": "3.1",
          "profile": "MAIN"
        },
        "framerate": 30.0,
        "height": 1080,
        "keyframeInterval": 2,
        "pass": "1-Pass",
        "rateControl": "ABR",
        "maxFramerate": 30,
        "width": 1920
      }
    }
    

    응답 예시

    HTTP/1.1 200 OK
    Server: nginx
    Date: Wed, 12 Sep 2018 09:53:32 GMT
    Content-Type: application/json;charset=utf-8
    Connection: keep-alive
    Access-Control-Allow-Origin: *
    x-ncp-trace-id: 36c9k60om4p3238cpmc9gm4cj4
    
    {
      "content": {
        "disabled": false,
        "id": 10058,
        "encodingOptionType": "NORMAL",
        "name": "basic-enc-option",
        "format": "MP4",
        "video": {
          "codec": "AVC",
          "codecOptions": {
            "profile": "MAIN",
            "level": "3.1"
          },
          "bitrate": 5000,
          "width": 1920,
          "height": 1080,
          "framerate": 30,
          "maxFramerate": 30,
          "keyframeInterval": 2,
          "rateControl": "ABR",
          "pass": "1-Pass"
        },
        "audio": {
          "codec": "AAC",
          "bitrate": 192,
          "channel": 2,
          "samplingRate": 44100
        }
      }
    }
    

    이 문서가 도움이 되었습니까?

    Changing your password will log you out immediately. Use the new password to log back in.
    First name must have atleast 2 characters. Numbers and special characters are not allowed.
    Last name must have atleast 1 characters. Numbers and special characters are not allowed.
    Enter a valid email
    Enter a valid password
    Your profile has been successfully updated.