Halaman ini menunjukkan cara membuat dan mengelola tugas Transcoder API.
Tugas mewakili unit dasar untuk mengelola pekerjaan dengan Transcoder API. Saat mengirimkan tugas ke Transcoder API, Anda menentukan lokasi geografis tempat tugas tersebut akan diproses. Anda dapat mencantumkan semua tugas di wilayah.
Untuk mempelajari lebih lanjut cara menggunakan tugas dan resource Google Cloud terkait di seluruh wilayah geografis, lihat Region.
Menyiapkan autentikasi dan project Google Cloud Anda
Jika Anda belum membuat project Google Cloud dan kredensial, lihat Sebelum memulai.Membuat tugas
Anda dapat membuat tugas menggunakan template tugas preset atau template tugas kustom yang telah Anda buat. Untuk mempelajari cara membuat template tugas, lihat Membuat dan mengelola template tugas. Daripada menggunakan template, Anda juga dapat membuat tugas dan langsung mengirim konfigurasi tugas dalam permintaan.
Transcoder API mendukung dua mode tugas: interaktif dan batch. Bagian berikut menjelaskan cara memulai tugas dalam mode interaktif. Untuk memulai tugas dalam mode batch, Anda harus menetapkan kolom tambahan (lihat informasi selengkapnya tentang tugas batch).
Membuat tugas berdasarkan preset
Untuk membuat tugas, gunakan metode
projects.locations.jobs.create
. Tugas ini mentranskode file media yang disimpan sebagai objek di Cloud Storage.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
: Google Cloud Project ID Anda yang tercantum di Setelan IAM.PROJECT_ID
: Lokasi tempat tugas Anda akan dijalankan. Gunakan salah satu region yang didukung.LOCATION Menampilkan lokasius-central1
us-west1
us-west2
us-east1
us-east4
southamerica-east1
northamerica-northeast1
asia-east1
asia-northeast1
asia-northeast3
asia-south1
asia-southeast1
australia-southeast1
europe-west1
europe-west2
europe-west4
: Nama bucket Cloud Storage yang Anda buat.STORAGE_BUCKET_NAME
: Nama video di bucket Cloud Storage yang Anda transkode, sepertiSTORAGE_INPUT_VIDEO my-vid.mp4
. Kolom ini harus mempertimbangkan folder apa pun yang Anda buat di bucket (misalnya,input/my-vid.mp4
).
: Nama folder Cloud Storage tempat Anda ingin menyimpan output video yang dienkode.STORAGE_OUTPUT_FOLDER
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Simpan isi permintaan dalam file bernama request.json
.
Jalankan perintah berikut di terminal untuk membuat atau menimpa file ini di direktori saat ini:
cat > request.json << 'EOF' { "inputUri": "gs://STORAGE_BUCKET_NAME /STORAGE_INPUT_VIDEO ", "outputUri": "gs://STORAGE_BUCKET_NAME /STORAGE_OUTPUT_FOLDER /", "templateId": "preset/web-hd" } EOF
Kemudian jalankan perintah berikut untuk mengirim permintaan REST Anda:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://transcoder.googleapis.com/v1/projects/PROJECT_ID /locations/LOCATION /jobs"
PowerShell (Windows)
Simpan isi permintaan dalam file bernama request.json
.
Jalankan perintah berikut di terminal untuk membuat atau menimpa file ini di direktori saat ini:
@' { "inputUri": "gs://STORAGE_BUCKET_NAME /STORAGE_INPUT_VIDEO ", "outputUri": "gs://STORAGE_BUCKET_NAME /STORAGE_OUTPUT_FOLDER /", "templateId": "preset/web-hd" } '@ | Out-File -FilePath request.json -Encoding utf8
Kemudian jalankan perintah berikut untuk mengirim permintaan REST Anda:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://transcoder.googleapis.com/v1/projects/PROJECT_ID /locations/LOCATION /jobs" | Select-Object -Expand Content
Anda akan melihat respons JSON seperti berikut:
{ "name": "projects/PROJECT_NUMBER /locations/LOCATION /jobs/JOB_ID ", "config": { "inputs": [ { "key": "input0", "uri": "gs://STORAGE_BUCKET_NAME /STORAGE_INPUT_VIDEO " } ], "editList": [ { "key": "atom0", "inputs": [ "input0" ], "startTimeOffset": "0s" } ], "elementaryStreams": [ { "videoStream": { "h264": { "widthPixels": 640, "heightPixels": 360, "frameRate": 30, "bitrateBps": 550000, "pixelFormat": "yuv420p", "rateControlMode": "vbr", "crfLevel": 21, "gopDuration": "3s", "vbvSizeBits": 550000, "vbvFullnessBits": 495000, "entropyCoder": "cabac", "bFrameCount": 3, "aqStrength": 1, "profile": "high", "preset": "veryfast" } }, "key": "video-stream0" }, { "videoStream": { "h264": { "widthPixels": 1280, "heightPixels": 720, "frameRate": 30, "bitrateBps": 2500000, "pixelFormat": "yuv420p", "rateControlMode": "vbr", "crfLevel": 21, "gopDuration": "3s", "vbvSizeBits": 2500000, "vbvFullnessBits": 2250000, "entropyCoder": "cabac", "bFrameCount": 3, "aqStrength": 1, "profile": "high", "preset": "veryfast" } }, "key": "video-stream1" }, { "audioStream": { "codec": "aac", "bitrateBps": 64000, "channelCount": 2, "channelLayout": [ "fl", "fr" ], "sampleRateHertz": 48000 }, "key": "audio-stream0" } ], "muxStreams": [ { "key": "sd", "fileName": "sd.mp4", "container": "mp4", "elementaryStreams": [ "video-stream0", "audio-stream0" ] }, { "key": "hd", "fileName": "hd.mp4", "container": "mp4", "elementaryStreams": [ "video-stream1", "audio-stream0" ] }, { "key": "media-sd", "fileName": "media-sd.ts", "container": "ts", "elementaryStreams": [ "video-stream0", "audio-stream0" ] }, { "key": "media-hd", "fileName": "media-hd.ts", "container": "ts", "elementaryStreams": [ "video-stream1", "audio-stream0" ] }, { "key": "video-only-sd", "fileName": "video-only-sd.m4s", "container": "fmp4", "elementaryStreams": [ "video-stream0" ] }, { "key": "video-only-hd", "fileName": "video-only-hd.m4s", "container": "fmp4", "elementaryStreams": [ "video-stream1" ] }, { "key": "audio-only", "fileName": "audio-only.m4s", "container": "fmp4", "elementaryStreams": [ "audio-stream0" ] } ], "manifests": [ { "fileName": "manifest.m3u8", "type": "HLS", "muxStreams": [ "media-sd", "media-hd" ] }, { "fileName": "manifest.mpd", "type": "DASH", "muxStreams": [ "video-only-sd", "video-only-hd", "audio-only" ] } ], "output": { "uri": "gs://STORAGE_BUCKET_NAME /STORAGE_OUTPUT_FOLDER /" } }, "state": "PENDING", "createTime":CREATE_TIME , "ttlAfterCompletionDays": 30 }
Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:
: Lokasi tempat tugas Anda akan dijalankan. Gunakan salah satu region yang didukung.LOCATION Menampilkan lokasius-central1
us-west1
us-west2
us-east1
us-east4
southamerica-east1
northamerica-northeast1
asia-east1
asia-northeast1
asia-northeast3
asia-south1
asia-southeast1
australia-southeast1
europe-west1
europe-west2
europe-west4
: Nama bucket Cloud Storage yang Anda buat.STORAGE_BUCKET_NAME
: Nama video di bucket Cloud Storage yang Anda transkode, sepertiSTORAGE_INPUT_VIDEO my-vid.mp4
. Kolom ini harus mempertimbangkan folder apa pun yang Anda buat di bucket (misalnya,input/my-vid.mp4
).
: Nama folder Cloud Storage tempat Anda ingin menyimpan output video yang dienkode.STORAGE_OUTPUT_FOLDER
Jalankan perintah berikut:
Linux, macOS, atau Cloud Shell
gcloud transcoder jobs create \ --input-uri="gs://STORAGE_BUCKET_NAME /STORAGE_INPUT_VIDEO " \ --location=LOCATION \ --output-uri="gs://STORAGE_BUCKET_NAME /STORAGE_OUTPUT_FOLDER /" \ --template-id="preset/web-hd"
Windows (PowerShell)
gcloud transcoder jobs create ` --input-uri="gs://STORAGE_BUCKET_NAME /STORAGE_INPUT_VIDEO " ` --location=LOCATION ` --output-uri="gs://STORAGE_BUCKET_NAME /STORAGE_OUTPUT_FOLDER /" ` --template-id="preset/web-hd"
Windows (cmd.exe)
gcloud transcoder jobs create ^ --input-uri="gs://STORAGE_BUCKET_NAME /STORAGE_INPUT_VIDEO " ^ --location=LOCATION ^ --output-uri="gs://STORAGE_BUCKET_NAME /STORAGE_OUTPUT_FOLDER /" ^ --template-id="preset/web-hd"
Anda akan melihat respons seperti berikut:
Respons
{ "name": "projects/PROJECT_NUMBER /locations/LOCATION /jobs/JOB_ID ", "config": { "inputs": [ { "key": "input0", "uri": "gs://STORAGE_BUCKET_NAME /STORAGE_INPUT_VIDEO " } ], "editList": [ { "key": "atom0", "inputs": [ "input0" ], "startTimeOffset": "0s" } ], "elementaryStreams": [ { "videoStream": { "h264": { "widthPixels": 640, "heightPixels": 360, "frameRate": 30, "bitrateBps": 550000, "pixelFormat": "yuv420p", "rateControlMode": "vbr", "crfLevel": 21, "gopDuration": "3s", "vbvSizeBits": 550000, "vbvFullnessBits": 495000, "entropyCoder": "cabac", "bFrameCount": 3, "aqStrength": 1, "profile": "high", "preset": "veryfast" } }, "key": "video-stream0" }, { "videoStream": { "h264": { "widthPixels": 1280, "heightPixels": 720, "frameRate": 30, "bitrateBps": 2500000, "pixelFormat": "yuv420p", "rateControlMode": "vbr", "crfLevel": 21, "gopDuration": "3s", "vbvSizeBits": 2500000, "vbvFullnessBits": 2250000, "entropyCoder": "cabac", "bFrameCount": 3, "aqStrength": 1, "profile": "high", "preset": "veryfast" } }, "key": "video-stream1" }, { "audioStream": { "codec": "aac", "bitrateBps": 64000, "channelCount": 2, "channelLayout": [ "fl", "fr" ], "sampleRateHertz": 48000 }, "key": "audio-stream0" } ], "muxStreams": [ { "key": "sd", "fileName": "sd.mp4", "container": "mp4", "elementaryStreams": [ "video-stream0", "audio-stream0" ] }, { "key": "hd", "fileName": "hd.mp4", "container": "mp4", "elementaryStreams": [ "video-stream1", "audio-stream0" ] }, { "key": "media-sd", "fileName": "media-sd.ts", "container": "ts", "elementaryStreams": [ "video-stream0", "audio-stream0" ] }, { "key": "media-hd", "fileName": "media-hd.ts", "container": "ts", "elementaryStreams": [ "video-stream1", "audio-stream0" ] }, { "key": "video-only-sd", "fileName": "video-only-sd.m4s", "container": "fmp4", "elementaryStreams": [ "video-stream0" ] }, { "key": "video-only-hd", "fileName": "video-only-hd.m4s", "container": "fmp4", "elementaryStreams": [ "video-stream1" ] }, { "key": "audio-only", "fileName": "audio-only.m4s", "container": "fmp4", "elementaryStreams": [ "audio-stream0" ] } ], "manifests": [ { "fileName": "manifest.m3u8", "type": "HLS", "muxStreams": [ "media-sd", "media-hd" ] }, { "fileName": "manifest.mpd", "type": "DASH", "muxStreams": [ "video-only-sd", "video-only-hd", "audio-only" ] } ], "output": { "uri": "gs://STORAGE_BUCKET_NAME /STORAGE_OUTPUT_FOLDER /" } }, "state": "PENDING", "createTime":CREATE_TIME , "ttlAfterCompletionDays": 30 }
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan C# di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API C# Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Go di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Go Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Java di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Java Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Node.js di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Node.js Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan PHP di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API PHP Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Python di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Python Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Ruby di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Ruby Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Membuat tugas berdasarkan template tugas
Jika telah membuat setidaknya satu template tugas di suatu lokasi, Anda dapat menentukan template tugas saat mengirim permintaan untuk membuat tugas Transcoder API di lokasi tersebut.
Untuk membuat tugas, gunakan metode
projects.locations.jobs.create
.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
: Google Cloud Project ID Anda yang tercantum di Setelan IAM.PROJECT_ID
: Lokasi tempat tugas Anda akan dijalankan. Gunakan salah satu region yang didukung.LOCATION Menampilkan lokasius-central1
us-west1
us-west2
us-east1
us-east4
southamerica-east1
northamerica-northeast1
asia-east1
asia-northeast1
asia-northeast3
asia-south1
asia-southeast1
australia-southeast1
europe-west1
europe-west2
europe-west4
: Nama bucket Cloud Storage yang Anda buat.STORAGE_BUCKET_NAME
: Nama video di bucket Cloud Storage yang Anda transkode, sepertiSTORAGE_INPUT_VIDEO my-vid.mp4
. Kolom ini harus memperhitungkan folder apa pun yang Anda buat di bucket (misalnya,input/my-vid.mp4
).
: Nama folder Cloud Storage tempat Anda ingin menyimpan output video yang dienkode.STORAGE_OUTPUT_FOLDER
: ID template tugas yang Anda buat. Jika Anda tidak menentukan template tugas kustom, Transcoder API akan menggunakan template tugasTEMPLATE_ID preset/web-hd
.
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Simpan isi permintaan dalam file bernama request.json
.
Jalankan perintah berikut di terminal untuk membuat atau menimpa file ini di direktori saat ini:
cat > request.json << 'EOF' { "inputUri": "gs://STORAGE_BUCKET_NAME /STORAGE_INPUT_VIDEO ", "outputUri": "gs://STORAGE_BUCKET_NAME /STORAGE_OUTPUT_FOLDER /", "templateId": "TEMPLATE_ID " } EOF
Kemudian jalankan perintah berikut untuk mengirim permintaan REST Anda:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://transcoder.googleapis.com/v1/projects/PROJECT_ID /locations/LOCATION /jobs"
PowerShell (Windows)
Simpan isi permintaan dalam file bernama request.json
.
Jalankan perintah berikut di terminal untuk membuat atau menimpa file ini di direktori saat ini:
@' { "inputUri": "gs://STORAGE_BUCKET_NAME /STORAGE_INPUT_VIDEO ", "outputUri": "gs://STORAGE_BUCKET_NAME /STORAGE_OUTPUT_FOLDER /", "templateId": "TEMPLATE_ID " } '@ | Out-File -FilePath request.json -Encoding utf8
Kemudian jalankan perintah berikut untuk mengirim permintaan REST Anda:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://transcoder.googleapis.com/v1/projects/PROJECT_ID /locations/LOCATION /jobs" | Select-Object -Expand Content
Anda akan melihat respons JSON seperti berikut:
{ "name": "projects/PROJECT_NUMBER /locations/LOCATION /jobs/JOB_ID ", "config": { "inputs": [ { "key": "input0", "uri": "gs://STORAGE_BUCKET_NAME /STORAGE_INPUT_VIDEO " } ], "editList": [ { "key": "atom0", "inputs": [ "input0" ], "startTimeOffset": "0s" } ], "elementaryStreams": [ { "videoStream": { "h264": { "widthPixels": 640, "heightPixels": 360, "frameRate": 60, "bitrateBps": 550000, "pixelFormat": "yuv420p", "rateControlMode": "vbr", "crfLevel": 21, "gopDuration": "3s", "vbvSizeBits": 550000, "vbvFullnessBits": 495000, "entropyCoder": "cabac", "profile": "high", "preset": "veryfast" } }, "key": "video-stream0" }, { "videoStream": { "h264": { "widthPixels": 1280, "heightPixels": 720, "frameRate": 60, "bitrateBps": 2500000, "pixelFormat": "yuv420p", "rateControlMode": "vbr", "crfLevel": 21, "gopDuration": "3s", "vbvSizeBits": 2500000, "vbvFullnessBits": 2250000, "entropyCoder": "cabac", "profile": "high", "preset": "veryfast" } }, "key": "video-stream1" }, { "audioStream": { "codec": "aac", "bitrateBps": 64000, "channelCount": 2, "channelLayout": [ "fl", "fr" ], "sampleRateHertz": 48000 }, "key": "audio-stream0" } ], "muxStreams": [ { "key": "sd", "fileName": "sd.mp4", "container": "mp4", "elementaryStreams": [ "video-stream0", "audio-stream0" ] }, { "key": "hd", "fileName": "hd.mp4", "container": "mp4", "elementaryStreams": [ "video-stream1", "audio-stream0" ] } ], "output": { "uri": "gs://STORAGE_BUCKET_NAME /STORAGE_OUTPUT_FOLDER /" } }, "state": "PENDING", "createTime":CREATE_TIME , "ttlAfterCompletionDays": 30 }
- Lakukan penggantian berikut untuk perintah
gcloud
: STORAGE_BUCKET_NAME : Nama bucket Cloud Storage yang Anda buat.STORAGE_INPUT_VIDEO : Nama video di bucket Cloud Storage yang Anda transcoding, sepertimy-vid.mp4
. Kolom ini harus memperhitungkan folder yang Anda buat di bucket (misalnya,input/my-vid.mp4
).LOCATION : Lokasi tempat tugas Anda akan berjalan. Gunakan salah satu region yang didukung.Menampilkan lokasius-central1
us-west1
us-west2
us-east1
us-east4
southamerica-east1
northamerica-northeast1
asia-east1
asia-northeast1
asia-northeast3
asia-south1
asia-southeast1
australia-southeast1
europe-west1
europe-west2
europe-west4
STORAGE_OUTPUT_FOLDER : Nama folder Cloud Storage tempat Anda ingin menyimpan output video yang dienkode.TEMPLATE_ID : ID template tugas yang Anda buat. Jika Anda tidak menentukan template tugas kustom, Transcoder API akan menggunakan template tugaspreset/web-hd
.- Jalankan perintah berikut:
Anda akan melihat respons seperti berikut:gcloud transcoder jobs create \ --input-uri="gs://
STORAGE_BUCKET_NAME /STORAGE_INPUT_VIDEO " \ --location=LOCATION \ --output-uri="gs://STORAGE_BUCKET_NAME /STORAGE_OUTPUT_FOLDER /" \ --template-id="TEMPLATE_ID "{ "name": "projects/
PROJECT_NUMBER /locations/LOCATION /jobs/JOB_ID ", "config": { "inputs": [ { "key": "input0", "uri": "gs://STORAGE_BUCKET_NAME /STORAGE_INPUT_VIDEO " } ], "editList": [ { "key": "atom0", "inputs": [ "input0" ], "startTimeOffset": "0s" } ], "elementaryStreams": [ { "videoStream": { "h264": { "widthPixels": 640, "heightPixels": 360, "frameRate": 60, "bitrateBps": 550000, "pixelFormat": "yuv420p", "rateControlMode": "vbr", "crfLevel": 21, "gopDuration": "3s", "vbvSizeBits": 550000, "vbvFullnessBits": 495000, "entropyCoder": "cabac", "profile": "high", "preset": "veryfast" } }, "key": "video-stream0" }, { "videoStream": { "h264": { "widthPixels": 1280, "heightPixels": 720, "frameRate": 60, "bitrateBps": 2500000, "pixelFormat": "yuv420p", "rateControlMode": "vbr", "crfLevel": 21, "gopDuration": "3s", "vbvSizeBits": 2500000, "vbvFullnessBits": 2250000, "entropyCoder": "cabac", "profile": "high", "preset": "veryfast" } }, "key": "video-stream1" }, { "audioStream": { "codec": "aac", "bitrateBps": 64000, "channelCount": 2, "channelLayout": [ "fl", "fr" ], "sampleRateHertz": 48000 }, "key": "audio-stream0" } ], "muxStreams": [ { "key": "sd", "fileName": "sd.mp4", "container": "mp4", "elementaryStreams": [ "video-stream0", "audio-stream0" ] }, { "key": "hd", "fileName": "hd.mp4", "container": "mp4", "elementaryStreams": [ "video-stream1", "audio-stream0" ] } ], "output": { "uri": "gs://STORAGE_BUCKET_NAME /STORAGE_OUTPUT_FOLDER /" } }, "state": "PENDING", "createTime":CREATE_TIME , "ttlAfterCompletionDays": 30 }
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan C# di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API C# Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Go di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Go Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Java di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Java Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Node.js di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Node.js Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan PHP di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API PHP Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Python di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Python Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Ruby di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Ruby Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Responsnya mirip dengan respons yang ditampilkan saat membuat tugas menggunakan template default.
Membuat tugas dengan konfigurasi ad-hoc
Anda dapat mengirim konfigurasi ad-hoc untuk tugas dengan permintaan untuk membuat tugas.
Untuk membuat tugas, gunakan metode
projects.locations.jobs.create
.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
: Google Cloud Project ID Anda yang tercantum di Setelan IAM.PROJECT_ID
: Lokasi tempat tugas Anda akan dijalankan. Gunakan salah satu region yang didukung.LOCATION Menampilkan lokasius-central1
us-west1
us-west2
us-east1
us-east4
southamerica-east1
northamerica-northeast1
asia-east1
asia-northeast1
asia-northeast3
asia-south1
asia-southeast1
australia-southeast1
europe-west1
europe-west2
europe-west4
: Nama bucket Cloud Storage yang Anda buat.STORAGE_BUCKET_NAME
: Nama video di bucket Cloud Storage yang Anda transkode, sepertiSTORAGE_INPUT_VIDEO my-vid.mp4
. Kolom ini harus memperhitungkan folder apa pun yang Anda buat di bucket (misalnya,input/my-vid.mp4
).
: Nama folder Cloud Storage tempat Anda ingin menyimpan output video yang dienkode.STORAGE_OUTPUT_FOLDER
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Simpan isi permintaan dalam file bernama request.json
.
Jalankan perintah berikut di terminal untuk membuat atau menimpa file ini di direktori saat ini:
cat > request.json << 'EOF' { "config": { "inputs": [ { "key": "input0", "uri": "gs://STORAGE_BUCKET_NAME /STORAGE_INPUT_VIDEO " } ], "elementaryStreams": [ { "key": "video-stream0", "videoStream": { "h264": { "heightPixels": 360, "widthPixels": 640, "bitrateBps": 550000, "frameRate": 60 } } }, { "key": "video-stream1", "videoStream": { "h264": { "heightPixels": 720, "widthPixels": 1280, "bitrateBps": 2500000, "frameRate": 60 } } }, { "key": "audio-stream0", "audioStream": { "codec": "aac", "bitrateBps": 64000 } } ], "muxStreams": [ { "key": "sd", "container": "mp4", "elementaryStreams": [ "video-stream0", "audio-stream0" ] }, { "key": "hd", "container": "mp4", "elementaryStreams": [ "video-stream1", "audio-stream0" ] } ], "output": { "uri": "gs://STORAGE_BUCKET_NAME /STORAGE_OUTPUT_FOLDER /" } } } EOF
Kemudian jalankan perintah berikut untuk mengirim permintaan REST Anda:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://transcoder.googleapis.com/v1/projects/PROJECT_ID /locations/LOCATION /jobs"
PowerShell (Windows)
Simpan isi permintaan dalam file bernama request.json
.
Jalankan perintah berikut di terminal untuk membuat atau menimpa file ini di direktori saat ini:
@' { "config": { "inputs": [ { "key": "input0", "uri": "gs://STORAGE_BUCKET_NAME /STORAGE_INPUT_VIDEO " } ], "elementaryStreams": [ { "key": "video-stream0", "videoStream": { "h264": { "heightPixels": 360, "widthPixels": 640, "bitrateBps": 550000, "frameRate": 60 } } }, { "key": "video-stream1", "videoStream": { "h264": { "heightPixels": 720, "widthPixels": 1280, "bitrateBps": 2500000, "frameRate": 60 } } }, { "key": "audio-stream0", "audioStream": { "codec": "aac", "bitrateBps": 64000 } } ], "muxStreams": [ { "key": "sd", "container": "mp4", "elementaryStreams": [ "video-stream0", "audio-stream0" ] }, { "key": "hd", "container": "mp4", "elementaryStreams": [ "video-stream1", "audio-stream0" ] } ], "output": { "uri": "gs://STORAGE_BUCKET_NAME /STORAGE_OUTPUT_FOLDER /" } } } '@ | Out-File -FilePath request.json -Encoding utf8
Kemudian jalankan perintah berikut untuk mengirim permintaan REST Anda:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://transcoder.googleapis.com/v1/projects/PROJECT_ID /locations/LOCATION /jobs" | Select-Object -Expand Content
Anda akan melihat respons JSON seperti berikut:
{ "name": "projects/PROJECT_NUMBER /locations/LOCATION /jobs/JOB_ID ", "config": { "inputs": [ { "key": "input0", "uri": "gs://STORAGE_BUCKET_NAME /STORAGE_INPUT_VIDEO " } ], "editList": [ { "key": "atom0", "inputs": [ "input0" ], "startTimeOffset": "0s" } ], "elementaryStreams": [ { "videoStream": { "h264": { "widthPixels": 640, "heightPixels": 360, "frameRate": 60, "bitrateBps": 550000, "pixelFormat": "yuv420p", "rateControlMode": "vbr", "crfLevel": 21, "gopDuration": "3s", "vbvSizeBits": 550000, "vbvFullnessBits": 495000, "entropyCoder": "cabac", "profile": "high", "preset": "veryfast" } }, "key": "video-stream0" }, { "videoStream": { "h264": { "widthPixels": 1280, "heightPixels": 720, "frameRate": 60, "bitrateBps": 2500000, "pixelFormat": "yuv420p", "rateControlMode": "vbr", "crfLevel": 21, "gopDuration": "3s", "vbvSizeBits": 2500000, "vbvFullnessBits": 2250000, "entropyCoder": "cabac", "profile": "high", "preset": "veryfast" } }, "key": "video-stream1" }, { "audioStream": { "codec": "aac", "bitrateBps": 64000, "channelCount": 2, "channelLayout": [ "fl", "fr" ], "sampleRateHertz": 48000 }, "key": "audio-stream0" } ], "muxStreams": [ { "key": "sd", "fileName": "sd.mp4", "container": "mp4", "elementaryStreams": [ "video-stream0", "audio-stream0" ] }, { "key": "hd", "fileName": "hd.mp4", "container": "mp4", "elementaryStreams": [ "video-stream1", "audio-stream0" ] } ], "output": { "uri": "gs://STORAGE_BUCKET_NAME /STORAGE_OUTPUT_FOLDER /" } }, "state": "PENDING", "createTime":CREATE_TIME , "ttlAfterCompletionDays": 30 }
Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:
: Lokasi tempat tugas Anda akan dijalankan. Gunakan salah satu region yang didukung.LOCATION Menampilkan lokasius-central1
us-west1
us-west2
us-east1
us-east4
southamerica-east1
northamerica-northeast1
asia-east1
asia-northeast1
asia-northeast3
asia-south1
asia-southeast1
australia-southeast1
europe-west1
europe-west2
europe-west4
: Nama bucket Cloud Storage yang Anda buat.STORAGE_BUCKET_NAME
: Nama video di bucket Cloud Storage yang Anda transkode, sepertiSTORAGE_INPUT_VIDEO my-vid.mp4
. Kolom ini harus memperhitungkan folder apa pun yang Anda buat di bucket (misalnya,input/my-vid.mp4
).
: Nama folder Cloud Storage tempat Anda ingin menyimpan output video yang dienkode.STORAGE_OUTPUT_FOLDER
Simpan konten berikut ini dalam file yang bernama request.json
:
{ "config": { "elementaryStreams": [ { "key": "video-stream0", "videoStream": { "h264": { "heightPixels": 360, "widthPixels": 640, "bitrateBps": 550000, "frameRate": 60 } } }, { "key": "video-stream1", "videoStream": { "h264": { "heightPixels": 720, "widthPixels": 1280, "bitrateBps": 2500000, "frameRate": 60 } } }, { "key": "audio-stream0", "audioStream": { "codec": "aac", "bitrateBps": 64000 } } ], "muxStreams": [ { "key": "sd", "container": "mp4", "elementaryStreams": [ "video-stream0", "audio-stream0" ] }, { "key": "hd", "container": "mp4", "elementaryStreams": [ "video-stream1", "audio-stream0" ] } ] } }
Jalankan perintah berikut:
Linux, macOS, atau Cloud Shell
gcloud transcoder jobs create \ --input-uri="gs://STORAGE_BUCKET_NAME /STORAGE_INPUT_VIDEO " \ --location=LOCATION \ --output-uri="gs://STORAGE_BUCKET_NAME /STORAGE_OUTPUT_FOLDER /" \ --file="request.json"
Windows (PowerShell)
gcloud transcoder jobs create ` --input-uri="gs://STORAGE_BUCKET_NAME /STORAGE_INPUT_VIDEO " ` --location=LOCATION ` --output-uri="gs://STORAGE_BUCKET_NAME /STORAGE_OUTPUT_FOLDER /" ` --file="request.json"
Windows (cmd.exe)
gcloud transcoder jobs create ^ --input-uri="gs://STORAGE_BUCKET_NAME /STORAGE_INPUT_VIDEO " ^ --location=LOCATION ^ --output-uri="gs://STORAGE_BUCKET_NAME /STORAGE_OUTPUT_FOLDER /" ^ --file="request.json"
Anda akan melihat respons seperti berikut:
Respons
{ "name": "projects/PROJECT_NUMBER /locations/LOCATION /jobs/JOB_ID ", "config": { "inputs": [ { "key": "input0", "uri": "gs://STORAGE_BUCKET_NAME /STORAGE_INPUT_VIDEO " } ], "editList": [ { "key": "atom0", "inputs": [ "input0" ], "startTimeOffset": "0s" } ], "elementaryStreams": [ { "videoStream": { "h264": { "widthPixels": 640, "heightPixels": 360, "frameRate": 60, "bitrateBps": 550000, "pixelFormat": "yuv420p", "rateControlMode": "vbr", "crfLevel": 21, "gopDuration": "3s", "vbvSizeBits": 550000, "vbvFullnessBits": 495000, "entropyCoder": "cabac", "profile": "high", "preset": "veryfast" } }, "key": "video-stream0" }, { "videoStream": { "h264": { "widthPixels": 1280, "heightPixels": 720, "frameRate": 60, "bitrateBps": 2500000, "pixelFormat": "yuv420p", "rateControlMode": "vbr", "crfLevel": 21, "gopDuration": "3s", "vbvSizeBits": 2500000, "vbvFullnessBits": 2250000, "entropyCoder": "cabac", "profile": "high", "preset": "veryfast" } }, "key": "video-stream1" }, { "audioStream": { "codec": "aac", "bitrateBps": 64000, "channelCount": 2, "channelLayout": [ "fl", "fr" ], "sampleRateHertz": 48000 }, "key": "audio-stream0" } ], "muxStreams": [ { "key": "sd", "fileName": "sd.mp4", "container": "mp4", "elementaryStreams": [ "video-stream0", "audio-stream0" ] }, { "key": "hd", "fileName": "hd.mp4", "container": "mp4", "elementaryStreams": [ "video-stream1", "audio-stream0" ] } ], "output": { "uri": "gs://STORAGE_BUCKET_NAME /STORAGE_OUTPUT_FOLDER /" } }, "state": "PENDING", "createTime":CREATE_TIME , "ttlAfterCompletionDays": 30 }
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan C# di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API C# Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Go di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Go Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Java di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Java Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Node.js di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Node.js Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan PHP di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API PHP Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Python di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Python Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Ruby di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Ruby Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Mendapatkan detail tugas
Untuk memeriksa detail atau status tugas, gunakan metode projects.locations.jobs.get
.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
JOB_ID
: ID tugas yang Anda buat.PROJECT_ID
: Google Cloud Project ID Anda.LOCATION
: Lokasi pekerjaan Anda. Gunakan salah satu region yang didukung.
us-central1
us-west1
us-west2
us-east1
us-east4
southamerica-east1
northamerica-northeast1
asia-east1
asia-northeast1
asia-northeast3
asia-south1
asia-southeast1
australia-southeast1
europe-west1
europe-west2
europe-west4
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://transcoder.googleapis.com/v1/projects/PROJECT_ID /locations/LOCATION /jobs/JOB_ID "
PowerShell (Windows)
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://transcoder.googleapis.com/v1/projects/PROJECT_ID /locations/LOCATION /jobs/JOB_ID " | Select-Object -Expand Content
Anda akan melihat respons JSON seperti berikut:
{ "name": "projects/PROJECT_NUMBER /locations/LOCATION /jobs/JOB_ID ", "config": { "inputs": [ { "key": "input0", "uri": "gs://STORAGE_BUCKET_NAME /STORAGE_INPUT_VIDEO " } ], "editList": [ { "key": "atom0", "inputs": [ "input0" ], "startTimeOffset": "0s" } ], "elementaryStreams": [ { "videoStream": { "h264": { "widthPixels": 640, "heightPixels": 360, "frameRate": 60, "bitrateBps": 550000, "pixelFormat": "yuv420p", "rateControlMode": "vbr", "crfLevel": 21, "gopDuration": "3s", "vbvSizeBits": 550000, "vbvFullnessBits": 495000, "entropyCoder": "cabac", "profile": "high", "preset": "veryfast" } }, "key": "video-stream0" }, { "videoStream": { "h264": { "widthPixels": 1280, "heightPixels": 720, "frameRate": 60, "bitrateBps": 2500000, "pixelFormat": "yuv420p", "rateControlMode": "vbr", "crfLevel": 21, "gopDuration": "3s", "vbvSizeBits": 2500000, "vbvFullnessBits": 2250000, "entropyCoder": "cabac", "profile": "high", "preset": "veryfast" } }, "key": "video-stream1" }, { "audioStream": { "codec": "aac", "bitrateBps": 64000, "channelCount": 2, "channelLayout": [ "fl", "fr" ], "sampleRateHertz": 48000 }, "key": "audio-stream0" } ], "muxStreams": [ { "key": "sd", "fileName": "sd.mp4", "container": "mp4", "elementaryStreams": [ "video-stream0", "audio-stream0" ] }, { "key": "hd", "fileName": "hd.mp4", "container": "mp4", "elementaryStreams": [ "video-stream1", "audio-stream0" ] } ], "output": { "uri": "gs://STORAGE_BUCKET_NAME /STORAGE_OUTPUT_FOLDER /" } }, "state": "PENDING", "createTime":CREATE_TIME , "ttlAfterCompletionDays": 30 }
- Lakukan penggantian berikut untuk perintah
gcloud
: JOB_ID : ID tugas yang Anda buat.LOCATION : Lokasi pekerjaan Anda. Gunakan salah satu region yang didukung.Menampilkan lokasius-central1
us-west1
us-west2
us-east1
us-east4
southamerica-east1
northamerica-northeast1
asia-east1
asia-northeast1
asia-northeast3
asia-south1
asia-southeast1
australia-southeast1
europe-west1
europe-west2
europe-west4
- Jalankan perintah berikut:
Anda akan melihat respons seperti berikut:gcloud transcoder jobs describe
JOB_ID --location=LOCATION { "name": "projects/
PROJECT_NUMBER /locations/LOCATION /jobs/JOB_ID ", "config": { "inputs": [ { "key": "input0", "uri": "gs://STORAGE_BUCKET_NAME /STORAGE_INPUT_VIDEO " } ], "editList": [ { "key": "atom0", "inputs": [ "input0" ], "startTimeOffset": "0s" } ], "elementaryStreams": [ { "videoStream": { "h264": { "widthPixels": 640, "heightPixels": 360, "frameRate": 60, "bitrateBps": 550000, "pixelFormat": "yuv420p", "rateControlMode": "vbr", "crfLevel": 21, "gopDuration": "3s", "vbvSizeBits": 550000, "vbvFullnessBits": 495000, "entropyCoder": "cabac", "profile": "high", "preset": "veryfast" } }, "key": "video-stream0" }, { "videoStream": { "h264": { "widthPixels": 1280, "heightPixels": 720, "frameRate": 60, "bitrateBps": 2500000, "pixelFormat": "yuv420p", "rateControlMode": "vbr", "crfLevel": 21, "gopDuration": "3s", "vbvSizeBits": 2500000, "vbvFullnessBits": 2250000, "entropyCoder": "cabac", "profile": "high", "preset": "veryfast" } }, "key": "video-stream1" }, { "audioStream": { "codec": "aac", "bitrateBps": 64000, "channelCount": 2, "channelLayout": [ "fl", "fr" ], "sampleRateHertz": 48000 }, "key": "audio-stream0" } ], "muxStreams": [ { "key": "sd", "fileName": "sd.mp4", "container": "mp4", "elementaryStreams": [ "video-stream0", "audio-stream0" ] }, { "key": "hd", "fileName": "hd.mp4", "container": "mp4", "elementaryStreams": [ "video-stream1", "audio-stream0" ] } ], "output": { "uri": "gs://STORAGE_BUCKET_NAME /STORAGE_OUTPUT_FOLDER /" } }, "state": "PENDING", "createTime":CREATE_TIME , "ttlAfterCompletionDays": 30 }
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan C# di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API C# Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Go di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Go Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Java di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Java Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Node.js di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Node.js Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan PHP di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API PHP Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Python di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Python Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Ruby di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Ruby Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Responsnya mirip dengan respons yang ditampilkan saat membuat tugas.
Mencantumkan tugas
Jika Anda ingin meninjau semua tugas yang dibuat di suatu lokasi, gunakan metode
projects.locations.jobs.list
.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
PROJECT_ID
: Google Cloud Project ID Anda.LOCATION
: Lokasi tugas Anda. Gunakan salah satu region yang didukung.
us-central1
us-west1
us-west2
us-east1
us-east4
southamerica-east1
northamerica-northeast1
asia-east1
asia-northeast1
asia-northeast3
asia-south1
asia-southeast1
australia-southeast1
europe-west1
europe-west2
europe-west4
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://transcoder.googleapis.com/v1/projects/PROJECT_ID /locations/LOCATION /jobs"
PowerShell (Windows)
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://transcoder.googleapis.com/v1/projects/PROJECT_ID /locations/LOCATION /jobs" | Select-Object -Expand Content
Anda akan melihat respons JSON seperti berikut:
{ "jobs": [ { "name": "projects/PROJECT_NUMBER /locations/LOCATION /jobs/MY_JOB ", "config": { .... }, "state": "PENDING", "createTime":CREATE_TIME , "ttlAfterCompletionDays": 30 }, { "name": "projects/PROJECT_NUMBER /locations/LOCATION /jobs/MY_OTHER_JOB ", "config": { .... }, "state": "SUCCEEDED", "createTime":CREATE_TIME , "startTime":START_TIME , "endTime":END_TIME , "ttlAfterCompletionDays": 30 } ] }
- Lakukan penggantian berikut untuk perintah
gcloud
: LOCATION : Lokasi pekerjaan Anda. Gunakan salah satu region yang didukung.Menampilkan lokasius-central1
us-west1
us-west2
us-east1
us-east4
southamerica-east1
northamerica-northeast1
asia-east1
asia-northeast1
asia-northeast3
asia-south1
asia-southeast1
australia-southeast1
europe-west1
europe-west2
europe-west4
- Jalankan perintah berikut:
Anda akan melihat respons seperti berikut:gcloud transcoder jobs list --location=
LOCATION NAME STATE FAILURE_REASON projects/
PROJECT_NUMBER /locations/LOCATION /jobs/JOB_ID SUCCEEDED projects/PROJECT_NUMBER /locations/LOCATION /jobs/abc123 SUCCEEDED
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan C# di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API C# Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Go di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Go Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Java di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Java Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Node.js di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Node.js Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan PHP di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API PHP Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Python di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Python Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Ruby di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Ruby Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Hasil tambahan
Respons daftar tugas dapat menyertakan nextPageToken
, yang dapat Anda gunakan untuk mengambil hasil tambahan:
{ "jobs": [ ... ], "nextPageToken": "NEXT_PAGE_TOKEN " }
Pada contoh curl
berikut, Anda dapat mengirim permintaan lain, dan menyertakan
nilai NEXT_PAGE_TOKEN untuk mencantumkan tugas tambahan, mirip dengan
berikut:
curl -X GET \ -H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \ https://transcoder.googleapis.com/v1/projects/PROJECT_ID /locations/LOCATION /jobs?pageToken=NEXT_PAGE_TOKEN
Lihat library klien yang relevan untuk mengetahui informasi selengkapnya tentang penggunaan token ini.
Memfilter hasil
Anda dapat memfilter hasil metode list jobs. Misalnya, jalankan perintah curl
berikut untuk mencantumkan semua tugas aktif:
curl -X GET \ -H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \ 'https://transcoder.googleapis.com/v1/projects/PROJECT_ID /locations/LOCATION /jobs?filter=-state="FAILED"+AND+-state="SUCCEEDED"'
Perintah ini menggunakan operator negasi untuk mencantumkan tugas yang belum gagal DAN
tugas yang belum berhasil. Daftar yang dihasilkan berisi tugas yang sedang berjalan
atau tertunda (lihat
ProcessingState
untuk mengetahui informasi tentang status tugas).
Berikut adalah beberapa contoh filter:
?filter=state="FAILED"+OR+state="SUCCEEDED"
: mencantumkan tugas yang telah selesai?filter=createTime+>+"2021-06-09T19:25:21.007649960Z"
: mencantumkan tugas yang dibuat setelah stempel waktu tertentu?filter=inputUri="gs://STORAGE_BUCKET_NAME/STORAGE_INPUT_VIDEO"
: mencantumkan tugas dengan URI input tertentu?filter=config.output.uri="gs://STORAGE_BUCKET_NAME/STORAGE_OUTPUT_FOLDER/"
: mencantumkan tugas dengan URI output tertentu
Untuk mengetahui informasi selengkapnya, lihat AIP-160 - Pemfilteran.
Menghapus tugas
Untuk menghapus tugas, gunakan metode
projects.locations.jobs.delete
.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
JOB_ID
: ID tugas yang Anda buat.PROJECT_ID
: Google Cloud Project ID Anda.LOCATION
: Lokasi pekerjaan Anda. Gunakan salah satu region yang didukung.
us-central1
us-west1
us-west2
us-east1
us-east4
southamerica-east1
northamerica-northeast1
asia-east1
asia-northeast1
asia-northeast3
asia-south1
asia-southeast1
australia-southeast1
europe-west1
europe-west2
europe-west4
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Jalankan perintah berikut:
curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://transcoder.googleapis.com/v1/projects/PROJECT_ID /locations/LOCATION /jobs/JOB_ID "
PowerShell (Windows)
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method DELETE `
-Headers $headers `
-Uri "https://transcoder.googleapis.com/v1/projects/PROJECT_ID /locations/LOCATION /jobs/JOB_ID " | Select-Object -Expand Content
Anda akan melihat respons JSON seperti berikut:
{}
- Lakukan penggantian berikut untuk perintah
gcloud
: JOB_ID : ID tugas yang Anda buat.LOCATION : Lokasi pekerjaan Anda. Gunakan salah satu region yang didukung.Menampilkan lokasius-central1
us-west1
us-west2
us-east1
us-east4
southamerica-east1
northamerica-northeast1
asia-east1
asia-northeast1
asia-northeast3
asia-south1
asia-southeast1
australia-southeast1
europe-west1
europe-west2
europe-west4
- Jalankan perintah berikut:
Anda akan melihat respons seperti berikut:gcloud transcoder jobs delete
JOB_ID --location=LOCATION Deleted job [projects/
PROJECT_ID /locations/LOCATION /jobs/JOB_ID ].
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan C# di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API C# Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Go di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Go Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Java di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Java Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Node.js di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Node.js Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan PHP di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API PHP Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Python di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Python Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Ruby di panduan memulai Transcoder API menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Ruby Transcoder API.
Untuk melakukan autentikasi ke Transcoder API, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Langkah selanjutnya
Pelajari cara Membuat dan mengelola template tugas.