Ringkasan Transcoder API (original) (raw)

Halaman ini memberikan ringkasan teknis tentang Transcoder API, termasuk fitur, terminologi, dan konsep yang berguna. Transcoder API menerapkan REST dan RPC API yang memungkinkan Anda mengirimkan, memantau, dan mengelola tugas transcoding di Google Cloud. Untuk mengirimkan tugas menggunakan Transcoder API, Anda harus mengupload aset media ke Cloud Storage terlebih dahulu. Setelah memproses tugas, Transcoder API akan menyimpan media yang dihasilkan kembali ke Cloud Storage.

Fitur

Transcoder API menyertakan dukungan untuk fitur berikut:

Untuk informasi selengkapnya tentang standar MP4 dan MPEG-DASH, lihatsitus Moving Picture Experts Group. Untuk informasi selengkapnya tentang standar HLS, lihatHTTP Live Streaming.

Penampung yang didukung untuk enkripsi konten

Tabel berikut menunjukkan penampung yang didukung untuk enkripsi konten.

Protokol streaming Container Sistem DRM Skema enkripsi
HLS TS ClearKey aes128
HLS TS FairPlay sampleAes
HLS fMP4 FairPlay Khusus cbcs mpegCenc
MPEG-DASH fMP4 Widevine mpegCenc cenc atau cbcs
MPEG-DASH fMP4 PlayReady mpegCenc cenc atau cbcs

Kontrol akses

Model kontrol akses Transcoder API didasarkan padaIdentity and Access Management Google. Izin terperinci IAM memberi Anda kontrol atas tindakan yang dapat dilakukan dengan data media, dan oleh siapa.

Batas

Tabel berikut menunjukkan batas per tugas transcoding.

Batas tugas
Lebar input maksimum 4.096 piksel
Tinggi input maksimum 4.096 piksel
Lebar output maksimum 4.096 piksel
Tinggi output maksimum 2160 piksel
Total ukuran output 400 GB
Durasi EditList maksimum 24 jam
Jumlah maksimum streaming video 70
Jumlah maksimum streaming audio 50
Jumlah maksimum streaming teks 50
Jumlah maksimum streaming mux 100
Jumlah maksimum manifes 100
Jumlah maksimum spritesheet 10

Konsep

Bagian ini memberikan konsep penting terkait file video dan cara file tersebut digunakan dengan Transcoder API.

Komponen file video

Setiap file video memiliki penampung, yang merupakan wrapper untuk seluruh file. Transcoder API menggunakan MuxStreamsuntuk menentukan penampung. Setiap penampung menyertakan kumpulanElementaryStreamsuntuk menentukan encoding trek teks video, audio, dan teks untuk file. Video dan audio dikompresi menggunakan codec.

Dalam contoh berikut, video dikompresi menggunakan H.264 dan audio dikompresi menggunakan AAC. Keduanya ditempatkan dalam penampung MP4.

Komponen file video dan contohnya
Gambar 1. Komponen file video (kiri) dan contoh file MP4 (kanan).

Struktur protokol streaming

Untuk media streaming, penyedia konten mengenkode konten yang sama dengan beberapa bitrate (diukur dalam Kilobit per detik). Penyedia kemudian membuat file manifes yang mengarah ke file yang berbeda dengan kecepatan bit yang berbeda. Pemutar media streaming menggunakan file manifes untuk memilih file yang sesuai, lalu mengambil video beberapa detik pada satu waktu. Setiap kecepatan bit dapat berupa satu file atau beberapa file pendek, bergantung pada apa yang didukung pemutar.

Resolusi media yang berbeda biasanya dienkode untuk menargetkan kecepatan bit yang berbeda. Misalnya, kecepatan bit yang lebih rendah dienkode dalam definisi standar (SD), bukan definisi tinggi (HD). Kumpulan kecepatan bit, resolusi, dan codec disebut hierarki Adaptive Bitrate (ABR). Penyedia konten streaming dapat menyesuaikan hierarki mereka sendiri berdasarkan biaya CDN, jenis perangkat pengguna, bandwidth dalam wilayah, dan faktor lainnya.

Komponen struktur protokol streaming dan contohnya
Gambar 2. Komponen struktur protokol streaming (atas) dan contoh penerapan HTTP Live Streaming (HLS) (bawah).

Terminologi

Bagian ini menyediakan glosarium istilah yang berguna untuk menggunakan Transcoder API.

Jeda iklan

Jeda iklan adalah iklan singkat yang muncul sebelum atau selama pemutaran media. Transcoder API mendukungkeyframe jeda iklandalam konfigurasi tugas. Transcoder API tidak menyisipkan atau memutar iklan, atau menghentikan pemutaran media; klien pemutar video bertanggung jawab untuk menangani keyframe.

Atom

Atom adalah struktur data dasar untuk menentukan metadata dan lokasi video. Video dapat terdiri dari hierarki bertingkat yang kompleks dari berbagai jenis atom, termasuk atom audio, edit, dan teks.

Atom audio

Atom audio memetakan audio dari streaming dasar ke daftar edit.

Jenis dan profil codec

Saat memilih codec untuk streaming video, Anda menentukan jenis codec, seperti H.264 dan profil, seperti profil high default.

Container

Penampung adalah wrapper yang menjelaskan hubungan antara berbagai komponen dalam streaming multipleks, termasuk file media dan metadata. Transcoder API mendukung format penampung MP4, MPEG-DASH, dan HLS.

Mengedit atom

Atom edit menentukan offset awal dan akhir untuk setiap segmen streaming yang ingin Anda gabungkan dalam daftar edit.

Mengedit daftar

Daftar edit menentukan urutan pengeditan sebagai linimasa untuk file atau manifes yang dihasilkan dari tugas transcoding.

Aliran data dasar

Streaming dasar adalah encoding file input, seperti trek teks audio, video, atau teks subtitel. Anda harus memaketkan streaming dasar sebelum memetakan dan membagikan streaming ke format output yang berbeda.

Encoding entropi

Encoding entropi adalah bentuk kompresi lossless yang didukung oleh Transcoder API. Saat mengonfigurasi tugas, Anda dapat menentukan coder entropi Context-Adaptive Variable-Length Coding (CAVLC) atau Context-Adaptive Binary Arithmetic Coding (CABAC).

Tugas

Tugas adalah unit dasar untuk mengelola tugas dengan Transcoder API. Saat Anda mengirimkan tugas ke Transcoder API, tugas tersebut akan diproses secara asinkron di lokasi geografis yang dikenal sebagai region. Anda dapat mencantumkan dan mengelola semua tugas untuk suatu region.

Siklus proses tugas mencakup tiga langkah: menyiapkan, mentranskode, dan memaketkan.

Tugas memilikistatus yang diperbarui. Layanan melaporkan error menggunakan kolomerror.

Konfigurasi tugas

Konfigurasi tugas mewakili banyak setelan yang dapat Anda sesuaikan saat membuat dan mengirimkan tugas ke Transcoder API. Anda dapat menentukan setelan konfigurasi seperti daftar edit dan tempat menyisipkan tag jeda iklan dalam manifes output. Anda dapat membuat konfigurasi tugas yang dapat digunakan kembali sebagai template tugas untuk digunakan di region Google Cloud .

Mode tugas

Transcoder API mendukung duamode tugas: interaktif dan batch.

Mode interaktif adalah mode tugas default. Gunakan mode ini jika Anda ingin pemrosesan tugas dimulai sesegera mungkin atau jika Anda ingin memiliki kontrol yang lebih terperinci tentang tugas mana yang dieksekusi terlebih dahulu. Dalam mode ini, kuota jumlah tugas serentakmengontrol jumlah tugas yang dijalankan secara serentak. Setelah kuota ini tercapai, semua tugas yang Anda coba mulai akan ditolak.

Gunakan mode batch untuk mengirimkan banyak tugas yang latensi pemrosesannya tidak begitu kritis seperti tugas yang dikirimkan dalam mode interaktif default. Anda dapat menentukanprioritas pemrosesan tugasuntuk tugas dalam mode ini. Tugas yang dikirim dalam mode batch dengan nilai prioritas yang sama dimasukkan ke dalam antrean first-in, first-out dan memiliki status tugas PENDINGsaat menunggu untuk dijalankan. Dalam mode ini, kuota jumlah tugas batch yang tertunda mengontrol jumlah tugas yang diantrekan. Setelah kuota ini tercapai, semua tugas yang Anda coba mulai akan ditolak. Tugas akan bertransisi ke status RUNNING saat dijalankan. Kuota jumlah tugas serentak batch mengontrol jumlah tugas yang dijalankan secara serentak.

Anda dapat menggunakan kedua mode secara bersamaan. Satu mode tidak lebih diprioritaskan daripada mode lainnya. Untuk mengetahui informasi selengkapnya tentang cara menyetel mode tugas, lihatMembuat tugas dalam mode batch.

Template tugas

Secara default, Transcoder API menerapkan template preset yang disebutpreset/web-hduntuk mengisi konfigurasi tugas. Konfigurasi tugas ini menghasilkan file output berikut:

Anda dapatmembuat dan mengelola template tugas kustom Anda sendiridan menentukannya saat membuat tugas.

Prapemrosesan

Prapemrosesan adalah tahap tugas yang dilakukan sebelum transcoding utama.

Konfigurasi pra-pemrosesan

Konfigurasi prapemrosesan mewakili setelan yang dapat Anda terapkan ke video sebelum tahap transcoding tugas. Anda dapat menerapkan pemangkasan atau padding sebagai bagian dari konfigurasi ini.

Mode kontrol kecepatan

Mode kontrol kecepatan menunjukkan apakah akan memproses tugas menggunakan mode faktor kecepatan konstan (CRF) atau kecepatan bit variabel (VBR). CRF memastikan kualitas yang konstan di seluruh aset media yang diproses. VBR mengoptimalkan proses encoding untuk mengurangi ukuran file aset media yang diproses. Untuk kasus penggunaan streaming, pilih mode kontrol kecepatan VBR. Untuk tujuan pengarsipan, pilih mode kontrol kecepatan CRF.

Manifes

Manifes adalah deskripsi konten dan metadata streaming media adaptif yang tersedia untuk klien. Di Transcoder API, Anda dapat mengonfigurasi tugas untuk menghasilkan manifes dengan nama file, daftar streaming multipleks, serta jenis manifes, yang harus berupa HLS atau MPEG-DASH.

Atom teks

Atom teks memetakan teks dari aliran dasar ke daftar edit.

Streaming teks

Streaming teks mengenkode data teks yang terkait dengan video, seperti teks tertutup atau subtitel.

Langkah selanjutnya