Topik ini menyediakan jawaban atas pertanyaan yang sering diajukan mengenai transkoding video di ApsaraVideo VOD.
Bagaimana cara saya menyelesaikan kegagalan transcoding?
Pastikan file sumber dapat diputar dengan benar di mesin lokal. Ini merupakan langkah kritis karena sebagian besar kegagalan transkoding disebabkan oleh file sumber yang tidak valid, seperti aliran video yang hilang, metadata yang salah, frame yang rusak, atau header file yang tidak ada. Masalah-masalah tersebut dapat memicu pemantauan efisiensi transkoding dan menyebabkan pekerjaan berhenti.
Jalankan perintah
ffprobe -show_streams -show_format -of json -i [filePath]untuk memeriksa metadata file guna mendeteksi masalah seperti atom moov yang hilang atau aliran yang tidak normal.Jalankan perintah
ffprobe -show_packets -i [filePath]untuk memeriksa masalah pada aliran data dan memverifikasi apakah durasi aliran sesuai dengan durasi dalam metadata.CatatanKetidaksesuaian antara durasi dalam metadata dan durasi aliran aktual dapat menyebabkan kegagalan transkoding. Jika suatu file memiliki metadata bermasalah, Anda dapat memprosesnya terlebih dahulu menggunakan tool FFmpeg secara lokal sebelum mengunggahnya untuk transkoding.
Temukan kode kesalahan yang sesuai dalam Kode kesalahan untuk menentukan penyebab spesifik kegagalan tersebut.
Jika watermark teks berisi karakter khusus, output mungkin terpotong atau gagal. Anda harus melakukan escape terhadap karakter khusus tersebut sebelum menambahkan watermark.
Jika transkoding terenkripsi gagal, lihat FAQ tentang enkripsi video untuk informasi mengenai kesalahan umum yang terjadi selama enkripsi HLS.
Mengapa saya tidak dapat memutar video yang diproses menggunakan grup templat bawaan "No Transcoding"?
Periksa kemungkinan penyebab berikut:
Penyebab 1: Video sumber yang diunggah tidak valid dan tidak dapat diputar.
Penyebab 2: Hanya video dalam format MP4, FLV, M3U8, MP3, dan WEBM yang dapat diputar langsung tanpa transkoding.
Saat Anda mengunggah video ke ApsaraVideo VOD, jika menggunakan grup templat bawaan No Transcoding dan video sumber berada dalam format MP4, FLV, M3U8, MP3, atau WEBM, maka aliran video kualitas asli akan dihasilkan setelah pengunggahan. Jika video sumber berada dalam format lain, aliran video original file akan dihasilkan.
Anda tidak dapat melakukan pratinjau aliran video original file di Konsol ApsaraVideo VOD atau mengambil URL pemutaran-nya dengan memanggil operasi GetPlayInfo. Anda hanya dapat mengambil URL file sumber untuk pemutaran dengan memanggil operasi GetMezzanineInfo. Sebaliknya, Anda dapat melakukan pratinjau aliran video kualitas asli di Konsol ApsaraVideo VOD dan mengambil URL pemutaran-nya dengan memanggil operasi GetPlayInfo.
Apa yang harus saya lakukan jika video sumber saya memiliki beberapa aliran audio tetapi hanya satu yang tersisa setelah transkoding?
Saat ini, hanya satu aliran audio yang dapat dipertahankan. Hal ini dikonfigurasi dengan menambahkan audioMap=0 ke parameter Output. Jika Anda memiliki persyaratan khusus, Anda dapat membuat tiket.
Mengapa lebar dan tinggi video hasil transkode berbeda dengan pengaturan?
Templat transkoding ApsaraVideo VOD mencakup fitur rotasi otomatis (LongShortMode), yang diaktifkan secara default. Saat fitur ini diaktifkan, `width` berkorespondensi dengan sisi panjang dan `height` berkorespondensi dengan sisi pendek. Anda hanya perlu mengatur salah satu nilai ini dan membiarkan yang lain kosong. Jika Anda ingin menghasilkan resolusi tertentu, Anda harus menonaktifkan rotasi otomatis. Perlu diperhatikan bahwa hal ini dapat menyebabkan video output tampak meregang atau terdistorsi.
Mengapa resolusi video bertukar setelah transkoding, misalnya dari potret menjadi lanskap?
Hal ini biasanya terjadi karena sumber video berisi rotation=-90, yang menyebabkan resolusi bertukar setelah transkoding. Anda dapat menggunakan tool FFmpeg untuk memeriksa apakah file sumber berisi informasi sudut rotasi. Untuk menanyakan informasi file sumber, jalankan perintah berikut:
ffprobe -show_streams -show_format -of json -i [filepath]Bagaimana cara memecahkan masalah layar hitam saat memutar file M3U8 yang ditranskode dari MP4?
Pertama, periksa apakah aliran video sumber Anda normal. Jika segmen TS pertama dari file sumber tidak memiliki data aliran video, pemutar menganggap tidak ada video. Jika hal ini terjadi, transkode terlebih dahulu file sumber ke MP4, lalu transkode file MP4 tersebut ke M3U8. Video seharusnya kemudian dapat diputar dengan benar.
Mengapa video menjadi terlalu terang atau terlalu gelap setelah dikonversi dari HDR ke SDR?
Jika video sumber Anda berupa High Dynamic Range (HDR), atur parameter Dynamic Range of HDR Source dalam templat transkoding ke Map to SDR. Contoh:

Fitur Map to SDR sedang dalam pratinjau publik. Fitur ini akan menjadi fitur berbayar setelah masa pratinjau publik berakhir. Untuk informasi lebih lanjut, lihat Biaya peningkatan audio dan video. Jika masalah tidak terselesaikan, Anda dapat membuat tiket untuk mendapatkan bantuan.
Dapatkah ApsaraVideo VOD menentukan posisi kotak moov selama transkoding? Bagaimana jika suatu file tidak memiliki kotak moov?
Setelah transkoding, kotak moov ditempatkan di header file MP4 secara default. Konfigurasi kustom tidak didukung. ApsaraVideo VOD tidak dapat memproses file yang tidak memiliki kotak moov. Transkoding untuk file semacam itu akan gagal.
Mengapa durasi file audio berbeda dari video sumber setelah konversi?
Logika transkoding ApsaraVideo VOD memastikan konsistensi durasi dengan mengatur waktu transkode berdasarkan aliran audio terpendek dalam file input. Jika stempel waktu pada beberapa segmen file sumber tidak kontinu, layanan tidak dapat mengambil informasi media dari aliran video. Hal ini memengaruhi perkiraan durasi transkoding dan menyebabkan deviasi durasi.
Apa yang harus saya lakukan jika terjadi kesalahan saat memutar file hanya audio hasil transkoding?
Periksa apakah pengaturan video dinonaktifkan dalam templat transkoding. Saat Anda mentranskode file hanya audio, Anda harus mencegah transkoding video. Untuk melakukannya, nonaktifkan video dan pilih resolusi yang sesuai, seperti dua resolusi terakhir yang ditunjukkan pada gambar.
Mengapa bitrate audio atau video yang ditetapkan dalam templat transkoding tidak berlaku?
Periksa apakah mekanisme pemeriksaan bitrate dikonfigurasi dalam templat transkoding. Di Konsol ApsaraVideo VOD, ini berkaitan dengan pengaturan Check video bitrate atau Check audio bitrate di bawah Conditional Transcoding Parameters. Jika pemeriksaan ini diaktifkan, bitrate yang Anda tetapkan dalam templat tidak berlaku dalam kondisi berikut: penyandi (encoder) input dan output sama, dan bitrate target lebih tinggi daripada bitrate sumber. Dalam kasus ini, bitrate diatur ulang berdasarkan mekanisme pemeriksaan, yang mungkin menggunakan bitrate asli atau melewati transkoding.
Berapa lama waktu yang dibutuhkan untuk pekerjaan transkode?
Di ApsaraVideo VOD, waktu yang dibutuhkan untuk pekerjaan transkoding terutama sebanding dengan durasi video. Waktu tersebut juga dipengaruhi oleh berbagai faktor, seperti resolusi output, format encoding, kompleksitas algoritma transkoding, dan jumlah pekerjaan transkoding. Rinciannya sebagai berikut:
Durasi video: Semakin lama video, semakin lambat proses transkoding.
Resolusi output: Semakin tinggi resolusi output, semakin lambat proses transkoding.
Algoritma transkoding: Semakin kompleks algoritmanya, semakin lambat proses transkoding. Kompleksitas algoritma transkoding diurutkan sebagai berikut: Narrowband HD 2.0 > Narrowband HD 1.0 > Transkoding reguler.
Jumlah pekerjaan transkoding: Semakin banyak pekerjaan yang Anda kirimkan, semakin lambat proses transkoding. Hal ini karena banyaknya pekerjaan dapat membentuk antrian, yang menambah waktu pemrosesan.
Faktor lain, seperti format encoding. Transkoding ke H.265 membutuhkan waktu lebih lama daripada transkoding ke H.264.
Secara normal, untuk pekerjaan yang menghasilkan video 720P H.264, transkoding reguler berjalan 5 hingga 6 kali kecepatan pemutaran, sedangkan transkoding Narrowband HD 1.0 berjalan 2 hingga 3 kali kecepatan pemutaran. Sebagai contoh, untuk mentranskode video berdurasi 6 menit ke 720P H.264, pekerjaan transkoding reguler membutuhkan waktu sekitar 1 menit. Pekerjaan transkoding Narrowband HD 1.0 membutuhkan waktu sekitar 2 menit.
Dapatkah saya menanyakan progres transkoding secara real time?
ApsaraVideo VOD tidak menyediakan antarmuka untuk menanyakan progres real time dari pekerjaan transkoding. Namun, Anda dapat mengatur callback untuk menerima notifikasi event mengenai hasil proses transkoding. Untuk informasi lebih lanjut, lihat Notifikasi event.
Dapatkah saya melakukan operasi transkoding batch?
ApsaraVideo VOD tidak mendukung operasi transkoding batch untuk video yang sudah berada di ApsaraVideo VOD. Sistem secara otomatis mentranskode video selama pengunggahan berdasarkan templat transkoding atau alur kerja yang dikonfigurasi. Namun, jika Anda menggunakan bucket Object Storage Service (OSS) milik Anda sendiri, Anda dapat melakukan transkoding batch. Untuk melakukannya, pertama-tama sambungkan proyek Intelligent Media Management (IMM). Kemudian, buat pekerjaan transkoding batch menggunakan kondisi seperti pencocokan awalan (prefix matching) untuk memproses beberapa video secara efisien. Untuk informasi lebih lanjut, lihat Pemrosesan batch OSS.
Mengapa pekerjaan transkoding saya terus-menerus gagal?
Pekerjaan dapat gagal karena berbagai alasan. Periksa pesan kesalahan yang dikembalikan. Jika Anda menerima kesalahan kegagalan pra-pemrosesan, artinya ApsaraVideo VOD tidak dapat mendekode file sumber Anda. Dalam hal ini, Anda dapat membuat tiket untuk mendapatkan bantuan dan menyediakan informasi berikut: ID akun Alibaba Cloud Anda dan ID video tersebut.
Apakah transkoding real-time didukung?
Tidak. ApsaraVideo VOD adalah layanan transkoding berbasis file dan tidak mendukung transkoding real-time.
Dapatkah saya mentranskode batch video yang sudah diunggah ke ApsaraVideo VOD?
Tidak. Transkoding batch tidak didukung untuk video yang sudah diunggah ke ApsaraVideo VOD.
Mengapa watermark saya tidak terlihat atau tidak berlaku setelah transkoding?
Periksa parameter templat watermark yang digunakan untuk transkoding, seperti ukuran (lebar × tinggi) dan offset. Pastikan pengaturan ini menempatkan watermark di dalam bingkai video (lebar resolusi × tinggi resolusi). Jika watermark berada di luar bingkai video, watermark tersebut tidak akan terlihat meskipun transkoding berhasil.

Mengapa saya tidak menerima callback untuk kegagalan transkoding?
Saat Anda mengonfigurasi notifikasi event untuk transkoding, Anda mungkin hanya mengonfigurasi event Single Definition Transcoding Complete (StreamTranscodeComplete) dan bukan event All Definitions Transcoding Complete (TranscodeComplete). Jika Anda mengunggah video sumber yang rusak sehingga menyebabkan semua aliran transkoding gagal, ApsaraVideo VOD mengembalikan callback `TranscodeComplete` yang gagal. Karena Anda tidak mengonfigurasi pendengar (listener) untuk callback ini, Anda tidak menerima notifikasi kegagalan transkoding.