일반 출력 설정

이 항목에는 일반 출력 설정 (모든 출력에 적용)과 관련된 인코딩 설정에 대한 세부 정보가 포함되어 있습니다.

type

type:String

API 버전: V1, V2

부모의: outputs

기본:표준

유효한 값 : standard , segmented , captions , playlist , 및transfer-only

호환 가능한 작업 유형: 전체

예: segmented

설명:

기본적으로 Zencoder는 출력을 표준 오디오 또는 비디오 파일로 간주합니다. 현재 두 가지 특수한 유형의 출력이 있습니다. segmentedplaylist .

  • :segmented 세분화의 일반적인 사용 사례는 Apple의 Live HTTP Streaming입니다 ( 세그먼트 스트리밍 ). 분할 된 출력의 경우 기본 형식이 mp4 대신 ts로 변경됩니다.
  • :captions API V2 만
    캡션 출력 유형은 캡션이 추가 된 비디오가 아니라 소스 비디오의 캡션 만 포함하는 파일을 만듭니다. 참고 : 캡션 유형 출력이 작업에 대한 유일한 출력이 아닐 수 있습니다.
    캡션은 별도의 파일로 Zencoder에 제공 될 수 있습니다 ( caption_url옵션) 또는 기본적으로 소스 비디오에서 추출됩니다.
    소스 비디오에서 캡션을 추출하는 데 지원되는 형식은 MP4 및 TS입니다. MP4 파일에서 캡션은 별도의 트랙 (CEA-608 형식)에있을 수 있습니다. 그렇지 않으면 MP4 또는 TS 파일의 캡션은 A / 53 또는 SCTE-128 (CC1 및 CC3) 표준을 준수하는 MPEG2 또는 AVC 비디오 스트림에 포함되어야합니다.
    캡션 유형 출력에 지원되는 출력 형식 : ' mp4 ',' scc ',' webvtt ',' vtt ',' m3u8 ',' dfxp '.
  • 재생 목록 : 재생 목록 출력 유형은 다중 비트 전송률 출력 스트림에서 마스터 M3U8 재생 목록 파일을 생성하는 데 사용됩니다. 참고 : 재생 목록 유형 출력이 작업에 대한 유일한 출력이 아닐 수 있습니다.
  • :transfer-only API V2 만
    transfer-only출력은 인코딩을 건너 뛰고 원본 비디오를url .
    transfer-only출력도 사용할 수 있습니다source비디오를 다른 출력에서 지정된url입력을 사용하는 대신.
{
  "input": "s3://zencodertesting/test.mov",
  "outputs": [
    {
      "type": "segmented"
    }
  ]
}

또한보십시오: sourcecaption_url

label

label:String

API 버전: V1, V2

부모의: outputs

유효한 값 : 문자열

호환 가능한 작업 유형: 전체

예: iphone4

설명:

출력에 대한 선택적 레이블입니다. API v2부터 라벨은 여러 출력에 사용될 때 작업별로 고유해야합니다 (대소 문자 구분 안 함).

{
  "input": "s3://zencodertesting/test.mov",
  "outputs": [
    {
      "label": "iphone4"
    }
  ]
}

또한보십시오: source

dynamic_profile_rendition

dynamic_profile_rendition:Integer

API 버전: V2

부모의: outputs

호환 가능한 작업 유형: 전체

설명:

그만큼dynamic_profile_rendition설정은이 출력이 동적으로 생성 된 CAE 프로필의 설정, 특히 설정을 사용할 프로필의 변환을 사용해야 함을 지정합니다. 언제dynamic_profile_rendition설정하면 다음과 같은 인코딩 설정을 지정할 필요가 없습니다. resolution , bitrate등 (참조 CAE 가이드 CAE에 의해 자동으로 설정되는 전체 설정 목록)

{
  "input": "s3://zencodertesting/test.mov",
  "generate_dynamic_profile": true,
  "dynamic_profile_options":{ "max_renditions": 6 },
  "outputs" :[
  {"dynamic_profile_rendition": 1},
  {"dynamic_profile_rendition": 2},
  {"dynamic_profile_rendition": 3},
  {"dynamic_profile_rendition": 4},
  {"dynamic_profile_rendition": 5},
  {"dynamic_profile_rendition": 6}
  ]
}

또한보십시오: source

url

url:String

API 버전: V1, V2

부모의: outputs

유효한 값 : 유효한 S3, Cloud Files, GCS, FTP, FTPS, SFTP, Aspera, Azure 또는 HTTP 주소.

호환 가능한 작업 유형: 전체

예:

  • s3://my-output-bucket/final.mp4
  • cf://username:api_key@container/object
  • cf+uk://username:api_key@container/object
  • gcs://access_key:secret_key@gcs-bucket/object
  • ftp://user:password@ftp.example.com/final.mp4
  • sftp://user:password@sftp.example.com/final.mp4
  • aspera://user:password@host:ssh-port/path/to/file.mp4

설명:

출력 파일이 업로드 될 파일 이름을 포함한 전체 URL입니다. 참조하십시오base_url제공자에 대한 자세한 정보는

S3, GCS, Cloud Files 및 Akamai에 대한 HTTP 업로드를 공식적으로 지원합니다.

S3에 대한 참고 사항 :

당신은부여쓰다출력 버킷에서 Zencoder에 대한 권한 Zencoder에 작업을 제출하기 전에. 쓰기 권한이 필요한 S3 "경로"가 아니라 S3 버킷입니다. 예를 들어, 자산http://s3.amazonaws.com/my_files/0000/video.mp4 "my_files / 0000"(경로)이 아닌 "my_files"(버킷 이름)에 쓰기 액세스 권한을 추가해야합니다.

URL (? 또는 #)에서 유효하지 않은 특수 문자를 포함하는 키를 만들려면 URL 인코딩 (각각 % 3F 및 % 23)해야합니다. 다른 모든 문자는 URL로 인코딩되어서는 안됩니다.

URL의 프로토콜을 다음과 같이 설정하여 S3 버킷의 지역을 제공 할 수 있습니다. s3+region-name , 여기서 "region-name"은 다음과 같이 정의됩니다. 이 문서 . 예를 들어 아시아 태평양 (싱가포르) 리전의 버킷에서 파일에 액세스하려면 URL을s3+ap-southeast-1://my-bucket/file.mp4 .

클라우드 파일에 대한 참고 사항 :

다음과 같이 프로토콜에 추가하여 사용할 지역 (DFW, ORD 또는 UK)을 지정할 수 있습니다. cf+ord://username:api_key@container/object . 현재 지원되는 클라우드 파일 지역은 DFW, ORD 및 영국뿐입니다. 기본적으로 DFW 영역이 사용됩니다.

컨테이너 이름의 모든 특수 문자는 URL로 인코딩되어야 합니다.

Google Cloud Storage에 대한 참고 사항 :

GCS 액세스 키는의 "Interoperable Access"섹션에서 찾을 수 있습니다. Google API 콘솔 . 액세스 키는올바르게 이스케이프해야합니다 .

점이 포함 된 GCS 버킷 이름은 지원되지 않습니다.

Azure에 대한 참고 사항 :

URL에 특수 문자를 사용한 인증이 포함 된 경우그들이 제대로 이스케이프되었는지 확인하십시오 .

FTP에 대한 참고 사항 :

URL에 특수 문자를 사용한 인증이 포함 된 경우그들이 제대로 이스케이프되었는지 확인하십시오 .

서버의 루트에서 쓰기를 시도하므로 URL에 절대 경로를 사용하여 서버에 성공적으로 쓸 수 있는지 확인하십시오.

Aspera에 대한 참고 사항 :

URL의 ssh-port 부분은 필요하지 않으며 기본값은 22입니다.

Zencoder는 비디오 인코딩 서버에서 Aspera 클라이언트를 실행합니다. Aspera Enterprise 또는 Connect 서버 , 파일을 호스팅합니다.

이는 파일을 사용할 수 있도록 FTP 서버를 실행하고 파일 전송을 위해 FTP 클라이언트를 사용하는 Zencoder와 유사한 상황입니다.

HTTPS를 통한 Akamai NetStorage에 대한 참고 사항 :

Zencoder는 FTP 또는 HTTPS를 통해 Akamai NetStorage에 콘텐츠를 업로드 할 수 있습니다. HTTPS를 통해 콘텐츠를 업로드하려면 다음과 같은 출력 URL을 구성하십시오. https://[Host]-nsu.akamaihd.net/[CPCode]/[path]/[file.ext] .

Akamai NetStorage 키 이름 및 키를 다음과 같이 참조 할 수 있습니다. 외부 서버신임장설정하여외부 서버 사용자필드를 Akamai NetStorage 키 이름 및외부 서버 비밀번호 Akamai NetStorage 키에 연결합니다.

{
  "input": "s3://zencodertesting/test.mov",
  "outputs": [
    {
      "url": "s3://my-output-bucket/final.mp4"
    }
  ]
}

또한보십시오: secondary_url

secondary_url

secondary_url:String

API 버전: V2

부모의: outputs

유효한 값 : 유효한 S3, Cloud Files, GCS, FTP, FTPS, SFTP, Aspera, Azure 또는 HTTP URL.

호환 가능한 작업 유형: 전체

예: URL 문서 참조

설명:

VOD 작업용

파일 이름을 포함한 전체 URL로 전송시 출력 파일이 업로드됩니다. url실패합니다.

또한보십시오: url

base_url

base_url:String

API 버전: V1, V2

부모의: outputs

유효한 값 : 파일 이름이없는 유효한 S3, Cloud Files, GCS, Aspera, FTP, FTPS 또는 SFTP URL.

호환 가능한 작업 유형: 전체

예:

  • s3://my-output-bucket/
  • cf://username:api_key@container/
  • gcs://access_key:secret_key@gcs-bucket/
  • ftp://user:password@ftp.example.com/path/to
  • http://s3.amazonaws.com/my-output-bucket/
  • aspera://user:password@host:ssh-port/path/to/

설명:

트랜스 코딩 된 파일이 파일 이름없이 업로드 될 기본 S3, Cloud Files, GCS, FTP, FTPS 또는 SFTP 디렉토리 URL입니다. 만약파일 이름지정되지 않은 경우 임의의 파일 이름과 적절한 확장자가 생성됩니다.

S3에 대한 참고 사항 :

당신은부여쓰다출력 버킷에서 Zencoder에 대한 권한 Zencoder에 작업을 제출하기 전에. 쓰기 권한이 필요한 S3 "경로"가 아니라 S3 버킷입니다. 예를 들어, 자산http://s3.amazonaws.com/my_files/0000/video.mp4 "my_files / 0000"(경로)이 아닌 "my_files"(버킷 이름)에 쓰기 액세스 권한을 추가해야합니다.

URL의 프로토콜을 다음과 같이 설정하여 S3 버킷의 지역을 제공 할 수 있습니다. s3+region-name , 여기서 "region-name"은 다음과 같이 정의됩니다. 이 문서 . 예를 들어 아시아 태평양 (싱가포르) 리전의 버킷에서 파일에 액세스하려면 URL을s3+ap-southeast-1://my-bucket/ .

클라우드 파일에 대한 참고 사항 :

다음과 같이 프로토콜에 추가하여 사용할 지역 (DFW, ORD 또는 UK)을 지정할 수 있습니다. cf+ord://username:api_key@container/object . 현재 지원되는 클라우드 파일 지역은 DFW, ORD 및 영국뿐입니다. 기본적으로 DFW 영역이 사용됩니다.

컨테이너 이름의 모든 특수 문자는 URL로 인코딩되어야 합니다.

Google Cloud Storage에 대한 참고 사항 :

GCS 액세스 키는의 "Interoperable Access"섹션에서 찾을 수 있습니다. Google API 콘솔 . 액세스 키는올바르게 이스케이프해야합니다 .

점이 포함 된 GCS 버킷 이름은 지원되지 않습니다.

Azure에 대한 참고 사항 :

URL에 특수 문자를 사용한 인증이 포함 된 경우그들이 제대로 이스케이프되었는지 확인하십시오 .

FTP에 대한 참고 사항 :

URL에 특수 문자를 사용한 인증이 포함 된 경우그들이 제대로 이스케이프되었는지 확인하십시오 .

서버의 루트에서 쓰기를 시도하므로 URL에 절대 경로를 사용하여 서버에 성공적으로 쓸 수 있는지 확인하십시오.

Aspera에 대한 참고 사항 :

URL의 ssh-port 부분은 필요하지 않으며 기본값은 22입니다.

HTTP에 대한 참고 사항 :

S3, GCS, Cloud Files 및 Akamai에 대한 HTTP 업로드를 공식적으로 지원합니다.

{
  "input": "s3://zencodertesting/test.mov",
  "outputs": [
    {
      "base_url": "s3://my-output-bucket/"
    }
  ]
}

또한보십시오: filename

filename

filename:String

API 버전: V1, V2

부모의: outputs

유효한 값 : 유효한 비디오 또는 오디오 파일 이름.

호환 가능한 작업 유형: 전체

예: final.mp4

설명:

그만큼filename완성 된 파일의. 제공하는 경우filename하지만base_url , 다운로드 할 수 있도록이 파일 이름을 가진 파일을 S3 버킷에 임시로 저장합니다.

S3에 대한 참고 사항 :

URL (? 또는 #)에서 유효하지 않은 특수 문자를 포함하는 키를 만들려면 URL 인코딩 (각각 % 3F 및 % 23)해야합니다. 다른 모든 문자는 URL로 인코딩되어서는 안됩니다.

{
  "input": "s3://zencodertesting/test.mov",
  "outputs": [
    {
      "filename": "final.mp4"
    }
  ]
}

또한보십시오: base_url

package_filename

package_filename:String

API 버전: V1, V2

부모의: outputs

유효한 값 : 유효한 패키지 파일 이름.

호환 가능한 작업 유형: 전체

예: final.zip

설명:

패키지 출력의 파일 이름입니다. 확장자가 유효한 것과 일치하는 경우package_format , 이렇게하면 package_format의 기본값도 설정됩니다. 지정된 경우이 값은 다음과 함께 사용됩니다. base_url출력 URL을 생성하는 대신filename . 만약filename지정되지 않은 경우 기본값은 다음과 같습니다. package_filename이지만 미디어 유형에 대한 올바른 파일 확장자를 사용합니다.

{
  "input": "s3://zencodertesting/test.mov",
  "outputs": [
    {
      "package_filename": "final.zip"
    }
  ]
}

또한보십시오: base_url파일 이름

package_format

package_format:String

API 버전: V1, V2

부모의: outputs

유효한 값 : ziptar

호환 가능한 작업 유형: 전체

예: zip

설명:

생성zip또는tar출력의 모든 미디어 파일을 포함하는 파일이며 모든 개별 파일이 아닌이 단일 패키지를 업로드합니다. 별도의 썸네일base_url패키지 파일 내부의 하위 디렉토리에도 포함됩니다.

만약package_filename지정되지 않은 경우 패키지 파일 이름은파일 이름 (하지만 패키지 형식을 확장으로 사용). 보다package_filename URL 처리에 대한 자세한 내용은

참고: 패키지 파일에 축소판이 포함 된 경우 패키지 내의 경로는 전체 URL이 아닌 해당 URL로 API를 통해 반환됩니다.

{
  "input": "s3://zencodertesting/test.mov",
  "outputs": [
    {
      "package_format": "zip"
    }
  ]
}

또한보십시오: package_filename

device_profile

device_profile:String

API 버전: V1, V2

유효한 값 : mobile/advanced , mobile/baseline , mobile/legacy , v1/mobile/advanced , v1/mobile/baseline , v1/mobile/legacy , v2/mobile/advanced , v2/mobile/baseline , 및v2/mobile/legacy

호환 가능한 작업 유형: 전체

예: mobile/advanced

설명:

Zencoder의 장치 프로필은 특정 장치 또는 장치 세트의 재생 기능을 대상으로하는 옵션 세트에 대한 바로 가기입니다. 장치 프로필을 설정하면 API 호출에 사용되는 기본값을 변경하는 것 외에는 아무것도 없습니다. 즉, 특정 요구 사항에 매우 쉽게 맞도록 프로필의 개별 설정을 완전히 무시할 수 있습니다.

버전이 지정된 장치 프로필을 사용할 수 있으며 아래에 나열되어 있습니다. 버전 지정 ( v1/mobile/baseline )을 사용하면 항상 동일한 프로필을 얻을 수 있고 버전 별 프로필 ( mobile/baseline )은 더 나은 옵션을 사용할 수있게되면 시간이 지남에 따라 변경 될 수 있습니다.

프로필 및 기본값 :

  • mobile/advanced : {"size": "1280x720", "audio_bitrate": 56, "max_audio_sample_rate": 48000, "max_frame_rate": 30, "max_video_bitrate": 5000, "video_codec_level": 3.1, "videoe_codec_profile": "main"}
  • mobile/baseline : {"size": "480x320", "audio_bitrate": 96, "max_audio_sample_rate": 44100, "max_frame_rate": 30, "max_video_bitrate": 1500, "video_reference_frames": 1}
  • mobile/legacy : {"size": "320x240", "audio_bitrate": 96, "max_audio_sample_rate": 44100, "max_frame_rate": 30, "max_video_bitrate": 768, "video_codec_level": 1.3, "video_reference_frames": 1}
  • v1/mobile/advanced : {"size": "1280x720", "audio_bitrate": 128, "max_audio_sample_rate": 48000, "max_frame_rate": 30, "max_video_bitrate": 5000, "video_codec_level": 3.1, "videoe_codec_profile": "main"}
  • v1/mobile/baseline : {"size": "480x320", "audio_bitrate": 96, "max_audio_sample_rate": 44100, "max_frame_rate": 30, "max_video_bitrate": 1500}
  • v1/mobile/legacy : {"size": "320x240", "audio_bitrate": 24, "max_audio_sample_rate": 16000, "max_frame_rate": 15, "max_video_bitrate": 192, "video_bitrate": 192, "bitrate_cap": 192, "upscale": true, "aspect_mode": "pad", "format": "3gp", "video_codec": "mpeg4"}
  • v2 / 모바일 / 고급 : {"size": "1280x720", "audio_bitrate": 56, "max_audio_sample_rate": 48000, "max_frame_rate": 30, "max_video_bitrate": 5000, "video_codec_level": 3.1, "videoe_codec_profile": "main"}
  • v2/mobile/baseline : {"size": "480x320", "audio_bitrate": 96, "max_audio_sample_rate": 44100, "max_frame_rate": 30, "max_video_bitrate": 1500, "video_reference_frames": 1}
  • v2/mobile/legacy : {"size": "320x240", "audio_bitrate": 96, "max_audio_sample_rate": 44100, "max_frame_rate": 30, "max_video_bitrate": 768, "video_codec_level": 1.3, "video_reference_frames": 1}
{
  "input": "s3://zencodertesting/test.mov",
  "outputs": [
    {
      "device_profile": "mobile/advanced"
    }
  ]
}

또한보십시오: format

strict

strict:Boolean

API 버전: V1, V2

부모의: outputs

기본: false

유효한 값 : true또는false

호환 가능한 작업 유형: 전체

예: true

설명:

활성화 " strict "모드. 기본적으로 인코딩 문제를 해결하려고합니다. 이것은 ... 불리운다 " compatible "모드. 예를 들어 인코더에 대해 너무 낮은 비디오 비트 전송률을 설정하면 가능한 가장 낮은 비트 전송률을 자동으로 수정하고 사용합니다. 따라서 150kbps의 비트 전송률을 요청했지만 인코더가 200kbps 미만의 작업을 수행 할 수없는 경우 자동으로 비디오를 200kbps로 인코딩합니다.

활성화하면 " strict "모드에서는 이러한 인코딩 설정을 수정하지 않습니다. 대신 대상 사양을 충족 할 수 없기 때문에 작업이 실패합니다.

{
  "input": "s3://zencodertesting/test.mov",
  "outputs": [
    {
      "strict": true
    }
  ]
}

skip_video

skip_video:Boolean

API 버전: V1, V2

부모의: outputs

기본: false

유효한 값 : true또는false

호환 가능한 작업 유형: 전체

예:진실

설명:

통과skip_video입력에서 비디오 트랙을 제거하거나 제거하고 결과 파일에는 오디오 만 포함됩니다.

{
  "input": "s3://zencodertesting/test.mov",
  "outputs": [
    {
      "skip_video": true
    }
  ]
}

skip_audio

skip_audio:Boolean

API 버전: V1, V2

부모의: outputs

기본: false

유효한 값 : true또는false

호환 가능한 작업 유형: 전체

예:진실

설명:

통과skip_audio입력에서 오디오 트랙을 제거하거나 제거하고 결과 파일에는 비디오 만 포함됩니다.

{
  "input": "s3://zencodertesting/test.mov",
  "outputs": [
    {
      "skip_audio": true
    }
  ]
}

source

source:String

API 버전: V2

부모의: outputs

호환 가능한 작업 유형: 전체

예: parent

설명:

다른 출력의 레이블을 참조하고 입력 파일 대신 처리를 위해 해당 출력에서 만든 비디오를 사용합니다.

소스와 함께 사용type "전송 전용"은 단일 출력 비디오를 초로 전송할 수 있습니다. url . 단일 비디오를 여러 대상으로 보내는 데 유용합니다.

{
  "input": "s3://zencodertesting/test.mov",
  "output": [
    {
      "label": "parent",
      "url": "s3://bucket/video.mp4"
    },
    {
      "source": "parent",
      "url": "s3://other-bucket/video.mp4",
      "type": "transfer-only"
    }
  ]
}

또한보십시오:상표type

credentials

credentials:String

API 버전: V2

부모의: outputs

호환 가능한 작업 유형: 전체

예: s3_production

설명:

닉네임 참조saved credentials전송에 사용합니다.

자격 증명은 해당 유형과 일치하는 URL에만 사용할 수 있습니다. 예를 들어 FTP URL과 쌍을 이루는 S3 자격 증명은 거부됩니다.

참고: 지정된 가장 "정확한"자격 증명이 우선합니다. 예를 들어 자격 증명 매개 변수가 기본 자격 증명보다 우선하는 것처럼 URL에 전달 된 자격 증명이 자격 증명 매개 변수보다 우선합니다.

{
  "input": "s3://zencodertesting/test.mov",
  "outputs": [
    {
      "url": "s3://bucket/video.mp4",
      "credentials": "s3_production"
    }
  ]
}

또한보십시오: urlbase_url

generate_md5_checksum

generate_md5_checksum:Boolean

API 버전: V2

기본: false

유효한 값 : true또는false

호환 가능한 작업 유형: 전체

설명:

생성 된 출력 파일에 대한 MD5 체크섬을 생성합니다.

{
  "input": "s3://zencodertesting/test.mov",
  "outputs": [
    {
      "generate_md5_checksum": true
    }
  ]
}

parallel_upload_limit

parallel_upload_limit:Integer

API 버전: V1, V2

기본: S3의 경우 30, 다른 모든 목적지의 경우 10.

유효한 값 : 1에서 30 사이의 정수

호환 작업 유형: VOD

예: 5

설명:

멀티 파트 출력, 주로 HLS 세그먼트를 업로드 할 때 수행되는 최대 동시 업로드 수입니다.

parallel_upload_limit전체 작업이 아닌 개별 출력에 대해 설정해야합니다.

 

원격 서버의 대역폭에 따라 전송 시간이 빨라질 수 있습니다. 연결 수가 많을수록 서버에 더 많은 부하가 발생할 수 있습니다. 업로드 시간 초과에 문제가 있거나 Zencoder가 파일을 업로드 할 때 너무 많은 대역폭을 사용하지 않도록하려면이 값을 1로 설정하십시오.

{
  "input": "s3://zencodertesting/test.mov",
  "outputs": [
    {
      "parallel_upload_limit": 5,
      "url": "s3://my-output-bucket/final.mp4",
      "credentials": "s3_production"
    },
    {
      "parallel_upload_limit": 5,
      "device_profile": "mobile/advanced",
      "url": "s3://my-output-bucket/mobile.mp4",
      "credentials": "s3_production"
    }
  ]
}

headers

headers:Hash

API 버전: V1, V2

부모님:출력또는썸네일

호환 가능한 작업 유형: 전체

예: { "Content-Type": "binary/octet-stream" }

설명:

우리가 그것을 업로드 할 때 파일과 함께 보낼 HTTP 헤더. 이 기능은 현재 S3, GCS 및 Cloud Files를 사용할 때 지원됩니다.

Zencoder는 다음 헤더의 제한된 하위 집합 설정을 지원합니다. Cache-Control , Content-Disposition , Content-Encoding , Content-Type , Expires , x-amz-acl , x-amz-storage-class , x-amz-server-side-encryption , x-amz-meta-* , x-goog-acl 및x-goog-meta-* .

출력 위치를 지정하지 않으면 헤더가 무시됩니다.

{
  "input": "s3://zencodertesting/test.mov",
  "outputs": [
    {
      "url": "s3://my-bucket/file.mp4",
      "headers": {
        "Content-Type": "binary/octet-stream",
        "x-amz-acl": "public-read-write"
      }
    }
  ]
}