Google Cloud Storage 설정
Google Cloud Platform에서 Zencoder를 사용하려면 아래 단계를 따르세요.
- Cloud Storage 설정으로 이동하고 상호 운용성 탭을 클릭합니다.
- 사용자 계정 HMAC에서 프로젝트를 기본값으로 선택하고 키 만들기를 클릭합니다.
- 나중에 Zencoder에 입력할 수 있도록 Access Key와 Secret을 저장합니다.
-
스토리지 객체 뷰어 역할을
allAuthenticatedUsers
가진 버킷 수준의 권한에 새 보안 주체를 추가합니다. public to Internet 옵션을 활성화해야 합니다. - Zencoder 대시보드의 자격 증명 섹션에서 Zencoder에 대한 액세스 키 및 암호를 추가합니다.
트랜스코딩
아래 예는 GCS에서 입력 비디오를 가져오고 HTTP 라이브 스트리밍 용 변환을 만들고 출력 스트림을 GCS로 보내는 작업 작업을 보여줍니다. 이를 변경하여 테스트 할 수 있습니다. my-bucket
소유하고있는 기존 GCS 버킷에 붙여 넣어요청 빌더 .
GCS를 사용한 HLS 작업 예
{
"test": true,
"input": "gcs://zencoder-testing/test.mov",
"output": [
{
"audio_bitrate": 64,
"audio_sample_rate": 22050,
"base_url": "gcs://my-bucket/",
"filename": "file-64k.m3u8",
"segment_seconds": 2,
"format": "aac",
"headers":{
"x-goog-acl": "public-read"
},
"type": "segmented"
},
{
"audio_bitrate": 56,
"audio_sample_rate": 22050,
"base_url": "gcs://my-bucket/",
"decoder_bitrate_cap": 360,
"decoder_buffer_size": 840,
"filename": "file-240k.m3u8",
"segment_seconds": 2,
"max_frame_rate": 15,
"type": "segmented",
"video_bitrate": 184,
"headers":{
"x-goog-acl": "public-read"
},
"width": 400,
"format": "ts"
},
{
"audio_bitrate": 56,
"audio_sample_rate": 22050,
"base_url": "gcs://my-bucket/",
"decoder_bitrate_cap": 578,
"decoder_buffer_size": 1344,
"filename": "file-440k.m3u8",
"segment_seconds": 2,
"type": "segmented",
"video_bitrate": 384,
"headers":{
"x-goog-acl": "public-read"
},
"width": 400,
"format": "ts"
},
{
"audio_bitrate": 56,
"audio_sample_rate": 22050,
"base_url": "gcs://my-bucket/",
"decoder_bitrate_cap": 960,
"decoder_buffer_size": 2240,
"filename": "file-640k.m3u8",
"segment_seconds": 2,
"type": "segmented",
"video_bitrate": 584,
"headers":{
"x-goog-acl": "public-read"
},
"width": 480,
"format": "ts"
},
{
"audio_bitrate": 56,
"audio_sample_rate": 22050,
"base_url": "gcs://my-bucket/",
"decoder_bitrate_cap": 1500,
"decoder_buffer_size": 4000,
"filename": "file-1040k.m3u8",
"segment_seconds": 2,
"type": "segmented",
"video_bitrate": 1000,
"headers":{
"x-goog-acl": "public-read"
},
"width": 640,
"format": "ts"
},
{
"audio_bitrate": 56,
"audio_sample_rate": 22050,
"base_url": "gcs://my-bucket/",
"decoder_bitrate_cap": 2310,
"decoder_buffer_size": 5390,
"filename": "file-1540k.m3u8",
"segment_seconds": 2,
"type": "segmented",
"video_bitrate": 1484,
"headers":{
"x-goog-acl": "public-read"
},
"width": 960,
"format": "ts"
},
{
"audio_bitrate": 56,
"audio_sample_rate": 22050,
"base_url": "gcs://my-bucket/",
"decoder_bitrate_cap": 3060,
"decoder_buffer_size": 7140,
"filename": "file-2040k.m3u8",
"segment_seconds": 2,
"type": "segmented",
"video_bitrate": 1984,
"headers":{
"x-goog-acl": "public-read"
},
"width": 1024,
"format": "ts"
},
{
"base_url": "gcs://my-bucket/",
"filename": "playlist.m3u8",
"streams": [
{
"bandwidth": 2040,
"path": "file-2040k.m3u8"
},
{
"bandwidth": 1540,
"path": "file-1540k.m3u8"
},
{
"bandwidth": 1040,
"path": "file-1040k.m3u8"
},
{
"bandwidth": 640,
"path": "file-640k.m3u8"
},
{
"bandwidth": 440,
"path": "file-440k.m3u8"
},
{
"bandwidth": 240,
"path": "file-240k.m3u8"
},
{
"bandwidth": 64,
"path": "file-64k.m3u8"
}
],
"headers":{
"x-goog-acl": "public-read"
},
"type": "playlist"
}
]
}