Teknis ·

Cara Kerja Transcoding Video (dan Kenapa Penting untuk Streaming 24/7)

Cara Kerja Transcoding Video (dan Kenapa Penting untuk Streaming 24/7)

Poin-poin penting

  • Transcoding mengonversi video menjadi resolusi, frame rate, dan codec yang konsisten — inilah yang membuat file dari sumber berbeda-beda bisa diputar secara terprediksi.
  • Loop 24/7 sangat sensitif terhadap video yang tidak konsisten, karena klip diputar berurutan tanpa henti tanpa ada manusia yang menyadari atau memperbaiki gangguan.
  • Menormalkan setiap video sekali saja di awal menghindari encoding ulang pada saat Anda tayang live — yang biasanya menjadi sumber gangguan dan crash di batas antar klip.

Jika Anda pernah mengunggah video dari HP, screen recorder, dan aplikasi editing ke proyek yang sama, Anda mungkin sudah menyadari video-video itu tidak selalu bisa diputar bersama dengan mulus — resolusi berbeda, frame rate berbeda, kadang codec yang sepenuhnya berbeda. Transcoding adalah langkah yang memperbaiki ini, dan khusus untuk live loop 24/7, ini bukan sekadar hal opsional yang bagus untuk dimiliki. Inilah yang menjadi pembeda antara stream yang berjalan berbulan-bulan tanpa masalah dan yang tersendat setiap kali sampai di klip tertentu.

Apa arti transcoding yang sebenarnya

Transcoding adalah proses mengonversi file video dari satu format ke format lain — biasanya menormalkan resolusi (misalnya, semuanya menjadi 1920x1080), frame rate (semuanya menjadi 30fps), dan codec (umumnya H.264 demi kompatibilitas luas) sehingga setiap file berperilaku sama di tahap selanjutnya. Ini berbeda dari sekadar "mengonversi tipe file": dua file .mp4 bisa memakai codec, bitrate, dan frame rate yang sepenuhnya berbeda secara internal meski berbagi ekstensi file yang sama.

Tanpa transcoding, memutar file 4K 24fps langsung diikuti file 720p 60fps dalam stream berkelanjutan yang sama bisa menyebabkan gangguan yang terlihat, frame hitam sesaat, atau dalam kasus lebih buruk, encoder crash — karena software yang mendorong stream harus merundingkan ulang pengaturan outputnya di tengah broadcast.

Kenapa ini lebih penting untuk loop 24/7 dibanding satu video

Unggahan sekali tayang hanya ditonton sekali, dan gangguan apa pun hanya muncul sebagai satu pengalaman tontonan yang buruk. Loop 24/7 memutar klip yang sama secara berurutan, tanpa henti, selama stream itu berjalan — yang berarti:

  • Setiap ketidakcocokan berulang terus. Gangguan di transisi antara dua klip tertentu tidak terjadi sekali; itu terjadi setiap kali playlist mencapai titik itu, selama loop berjalan.
  • Tidak ada yang menonton untuk me-restart-nya. Premis utama stream 24/7 adalah berjalan tanpa pengawasan. Crash yang bisa disadari dan diperbaiki manusia dalam hitungan detik pada stream yang diawasi bisa diam mati selama berjam-jam pada stream yang tidak diawasi.
  • Playlist bertambah seiring waktu. Seiring Anda menambahkan lebih banyak video dari lebih banyak sumber, kemungkinan setidaknya satu klip punya format yang tidak cocok terus bertambah.

Dua cara menangani ini: saat unggah, atau saat Go Live

Ada dua titik di mana transcoding bisa terjadi, dan perbedaannya penting:

  1. Saat unggah, sekali saja. Setiap video dinormalkan ke format target tetap begitu ditambahkan ke library Anda — resolusi, frame rate, dan codec dikunci sebelum pernah diantrekan ke playlist. Biaya transcoding dibayar sekali, di awal, dan tidak pernah lagi.
  2. Saat Go Live, setiap kali. Stream meng-encode ulang seluruh playlist secara langsung setiap kali Anda mulai broadcast. Ini bisa berjalan, tapi berarti membayar biaya transcoding — dan berisiko mengalami kegagalan transcoding — setiap kali Anda tayang live, dan tidak membantu mencegah ketidakcocokan antar klip dalam playlist yang sama.

Loopcast menggunakan pendekatan pertama: setiap video dinormalkan sekali di latar belakang segera setelah diunggah, jadi pada saat masuk ke live loop, relay hanya menggabungkan klip-klip yang sudah konsisten alih-alih meng-encode ulang secara langsung. Itu juga alasan kenapa mengedit titik potong (trim) sebuah video hanya memicu normalisasi ulang yang cepat, bukan memengaruhi seluruh stream — hanya satu klip yang berubah yang membutuhkan pekerjaan baru.

Seperti apa bentuknya dalam praktik

Anda umumnya tidak melihat transcoding terjadi — prosesnya berjalan di latar belakang setelah Anda mengunggah video, dan video menampilkan status "processing" singkat sebelum ditandai siap ditambahkan ke playlist. Poin praktisnya bukan sebuah pengaturan yang perlu Anda konfigurasi; ini alasan untuk mengunggah video jauh sebelum peluncuran alih-alih mengharapkannya langsung siap stream, dan alasan kenapa layanan yang melakukan transcoding sekali, di awal, cenderung bertahan lebih baik selama masa berjalan tanpa pengawasan yang panjang dibanding yang tidak.

Pertanyaan yang sering diajukan

Apakah transcoding menurunkan kualitas video?

Transcode yang dikonfigurasi dengan baik menargetkan bitrate dan resolusi cukup tinggi sehingga penurunan kualitas tidak terlihat oleh penonton, apalagi karena YouTube sendiri mengompresi ulang apa pun yang Anda unggah atau streaming terlepas dari itu. Tujuan transcoding di sini adalah konsistensi, bukan kompresi demi kompresi itu sendiri.

Kenapa video yang baru diunggah muncul sebagai "processing" alih-alih langsung siap?

Itu adalah langkah transcoding yang sedang berjalan — video sedang dinormalkan ke format yang konsisten di latar belakang. Setelah selesai, video menjadi tersedia untuk ditambahkan ke playlist.

Jika dua video saya sudah punya resolusi dan frame rate yang sama, apakah keduanya tetap perlu di-transcode?

Biasanya iya, setidaknya untuk pertama kali — kecocokan resolusi dan frame rate itu perlu tapi tidak cukup; pengaturan codec, interval keyframe, dan format audio masih bisa berbeda dengan cara yang tidak terlihat jelas hanya dari properti file, jadi menormalkan setiap unggahan dengan cara yang sama menghindari ketergantungan pada kecocokan visual sebagai kecocokan yang lengkap.