Topik ini menjawab pertanyaan umum (FAQ) terkait pengambilan snapshot di ApsaraVideo Media Processing (MPS).
Kesalahan umum untuk pekerjaan snapshot
Berikut adalah beberapa kode kesalahan yang mungkin muncul pada pekerjaan snapshot: SnapshotTimeOut, InvalidParameter.ResourceNotFound, dan InvalidParameter.ResourceContentBad. Jika pekerjaan snapshot gagal dikirimkan, Anda dapat menggunakan operasi QuerySnapshotJobList untuk mengetahui penyebab kegagalannya. Untuk informasi lebih lanjut, lihat QuerySnapshotJobList.
Apa yang harus saya lakukan jika kode kesalahan "SnapshotTimeOut" dikembalikan?
Kode kesalahan ini muncul ketika pekerjaan snapshot dalam mode sinkron mengalami timeout. Batas waktu untuk pekerjaan snapshot dalam mode sinkron adalah 5 detik. Jika file input terlalu besar, pekerjaan snapshot mungkin mengalami timeout. Jika timeout sering terjadi, disarankan untuk mengirimkan pekerjaan snapshot dalam mode asinkron.
Apa yang harus saya lakukan jika kode kesalahan "InvalidParameter.ResourceNotFound" dikembalikan?
Kode kesalahan ini muncul jika pekerjaan snapshot gagal dikirimkan atau gagal karena file input tidak ditemukan. Lakukan pemecahan masalah berdasarkan penyebab yang dijelaskan dalam tabel berikut:
Penyebab | Solusi |
File input belum diunggah saat pekerjaan snapshot dikirimkan atau file input telah dihapus. | Pastikan file input telah diunggah sebelum mengirimkan pekerjaan snapshot. |
Jalur Object Storage Service (OSS) dari file input tidak valid. | Periksa jalur OSS dari file input. |
Pengkodean URL tidak dilakukan pada jalur OSS dari file input. | Untuk informasi lebih lanjut, lihat Pengkodean URL. |
OSS bucket tempat file input disimpan tidak berada di wilayah yang sama dengan MPS. | Pastikan OSS bucket dan MPS berada di wilayah yang sama. |
File input disimpan di OSS menggunakan penyimpanan Cold Archive atau Deep Cold Archive. | Pulihkan data Cold Archive sebelum mengaksesnya. |
File input disimpan di OSS menggunakan penyimpanan Archive dan fitur akses real-time dinonaktifkan untuk file input atau file input belum dipulihkan. | Aktifkan fitur akses real-time untuk data Archive atau pulihkan data sebelum mengaksesnya. |
Fitur perlindungan hotlink berbasis referer diaktifkan untuk OSS bucket tempat file input disimpan. | Untuk memicu alur kerja secara otomatis, konfigurasikan referer untuk OSS bucket tempat file input disimpan. Jika Anda mengirimkan pekerjaan snapshot menggunakan metode lain, tambahkan parameter Referer ke parameter Input. |
Apa yang harus saya lakukan jika kode kesalahan "InvalidParameter.ResourceContentBad" dikembalikan?
Kode kesalahan ini muncul jika pekerjaan snapshot gagal dikirimkan atau gagal karena terjadi konflik konfigurasi parameter atau file input rusak. Lakukan langkah-langkah berikut untuk pemecahan masalah:
Periksa apakah file input normal.
Periksa apakah parameter dikonfigurasi dengan benar untuk pekerjaan snapshot, terutama parameter Time, FrameType, dan OutputFile.
Jika kesalahan tetap ada, hubungi dukungan teknis Alibaba Cloud dan berikan ID wilayah serta ID permintaan Anda untuk pemecahan masalah.
Apa yang harus saya lakukan jika saya gagal mengirimkan pekerjaan snapshot dalam mode sinkron untuk file M3U8?
Jika Anda mengirimkan pekerjaan snapshot dalam mode sinkron untuk file M3U8, pastikan file Transport Stream (TS) yang dirujuk dalam indeks M3U8 berada di direktori yang sama dengan file M3U8. Jika Anda mengirimkan pekerjaan snapshot dalam mode asinkron untuk file M3U8, file TS yang dirujuk dalam indeks M3U8 dan file M3U8 dapat berada di direktori yang berbeda.
Apa yang harus saya lakukan jika saya gagal mengirimkan pekerjaan snapshot untuk menangkap snapshot tunggal karena titik waktu ketika snapshot ditangkap lebih besar dari durasi video?
Kode kesalahan: InvalidParameter.ResourceContentBad
Pesan kesalahan: Sumber daya yang dioperasikan InputFile buruk
Penyebab | Solusi |
Jika Anda mengirimkan pekerjaan snapshot untuk menangkap frame reguler tunggal dan mengatur parameter Time ke nilai yang lebih besar dari durasi video, pekerjaan snapshot gagal dikirimkan. | Atur parameter Time ke nilai yang lebih kecil dari durasi video. Sebagai alternatif, Anda dapat mengirimkan pekerjaan snapshot untuk menangkap keyframe tunggal. Jika Anda mengatur parameter Time ke nilai yang lebih besar dari durasi video, keyframe yang paling dekat dengan titik waktu yang ditentukan akan ditangkap. |
Apa yang harus saya lakukan jika saya gagal mengirimkan pekerjaan snapshot dan pesan kesalahan menunjukkan bahwa format parameter Object dalam parameter OutputFile tidak valid?
Kode kesalahan: InvalidParameter.ResourceContentBad
Pesan kesalahan: Format parameter "SnapshotConfig:OutputFile:Object" tidak valid
Penyebab | Solusi |
Nilai parameter Object dalam parameter OutputFile tidak mengandung placeholder {count} ketika Anda mengirimkan pekerjaan snapshot untuk menangkap beberapa snapshot. Dalam hal ini, pekerjaan snapshot gagal dikirimkan karena pengaturan parameter tidak valid. | Tambahkan {Count} ke nilai parameter Object dalam parameter OutputFile untuk mencegah beberapa snapshot di jalur yang sama saling menimpa. |
Parameter Format diatur ke vtt untuk menangkap snapshot Web Video Text Tracks Format (WebVTT), tetapi ekstensi nama file dalam nilai parameter Object bukan .vtt dalam parameter OutputFile. Dalam hal ini, pekerjaan snapshot gagal dikirimkan karena pengaturan parameter tidak valid. | Ubah ekstensi nama file dalam nilai parameter Object menjadi .vtt dalam parameter OutputFile. |
Apa yang harus saya lakukan jika saya gagal mengirimkan pekerjaan snapshot dan pesan kesalahan menunjukkan bahwa format parameter Object dalam parameter TileOutputFile tidak valid?
Kode kesalahan: InvalidParameter.ResourceContentBad
Pesan kesalahan: Format parameter "SnapshotConfig:TileOutputFile:Object" tidak valid
Penyebab | Solusi |
Nilai parameter Object dalam parameter OutputFile tidak mengandung placeholder {TileCount} ketika Anda mengirimkan pekerjaan snapshot untuk menghasilkan sprite. Dalam hal ini, pekerjaan snapshot gagal dikirimkan karena pengaturan parameter tidak valid. | Tambahkan {TileCount} ke nilai parameter Object dalam parameter TileOutputFile untuk mencegah sprite di jalur yang sama saling menimpa. |
FAQ tentang konfigurasi pekerjaan snapshot
Bagaimana cara membedakan antara pekerjaan snapshot dalam mode sinkron dan pekerjaan snapshot dalam mode asinkron?
Jika parameter Interval atau Num ditentukan dalam parameter SnapshotConfig dari pekerjaan snapshot, pekerjaan snapshot berada dalam mode asinkron terlepas dari apakah parameter PiplineId ditentukan.
Apa yang terjadi jika saya mengatur titik waktu ketika snapshot ditangkap ke nilai yang lebih besar dari durasi video?
Jika Anda mengirimkan pekerjaan snapshot untuk menangkap snapshot tunggal dan mengatur parameter Time ke nilai yang lebih besar dari durasi video, hasil berikut dikembalikan berdasarkan jenis frame yang ingin Anda tangkap:
Frame reguler: Pekerjaan snapshot gagal. Kode kesalahan "InvalidParameter.ResourceContentBad" dan pesan kesalahan "Sumber daya yang dioperasikan InputFile buruk" dikembalikan.
Keyframe: Pekerjaan snapshot berhasil. Keyframe yang paling dekat dengan titik waktu yang ditentukan ditangkap.
Jika Anda mengirimkan pekerjaan snapshot untuk menangkap beberapa snapshot dan nilai parameter Time ditambah nilai parameter Interval kali nilai parameter Num lebih besar dari durasi video, pekerjaan snapshot berhasil. Jika titik waktu snapshot sama dengan atau lebih kecil dari durasi video, snapshot ditangkap. Jika titik waktu snapshot lebih besar dari durasi video, snapshot tidak ditangkap. Setelah pekerjaan snapshot selesai, jumlah snapshot yang ditangkap dikembalikan.
FAQ tentang snapshot yang tidak memenuhi persyaratan
Apa yang harus saya lakukan jika jumlah snapshot berbeda dari nilai parameter Num?
Lakukan pemecahan masalah berdasarkan penyebab yang dijelaskan dalam tabel berikut:
Penyebab | Solusi |
Ketika Anda mengirimkan pekerjaan snapshot untuk menghasilkan snapshot dan sprite, jalur yang sama di bucket OSS ditentukan untuk snapshot dan sprite. Akibatnya, snapshot dan sprite saling menimpa. | Tentukan bucket OSS atau jalur yang berbeda untuk sprite dan snapshot. |
Baik parameter Interval maupun Num ditentukan untuk menangkap snapshot dalam mode sampling. Jumlah snapshot yang ditangkap mungkin berbeda dari nilai parameter Num jika video tidak cukup panjang. | Hasilnya normal. |
Fitur deteksi frame hitam diaktifkan ketika Anda mengirimkan pekerjaan snapshot untuk menangkap snapshot tunggal. Tidak ada snapshot yang ditangkap jika frame hitam difilter. | Jika Anda tidak ingin memfilter frame hitam, ubah nilai parameter BlackLevel dan PixelBlackThreshold. |
Parameter FrameType diatur ke intra untuk menangkap frame I. Jumlah snapshot yang ditangkap mungkin berbeda dari nilai parameter Num karena penyebab berikut:
| Jika Anda ingin menangkap snapshot pada titik waktu yang tepat, atur parameter FrameType ke normal. |
Apa yang harus saya lakukan jika titik waktu ketika snapshot ditangkap berbeda dari nilai parameter Time?
Penyebab | Solusi |
Parameter FrameType diatur ke intra untuk menangkap frame I. Keyframe muncul pada interval dalam video. Oleh karena itu, titik waktu ketika snapshot ditangkap tidak tepat. Keyframe yang paling dekat dengan titik waktu ditangkap. | Jika Anda ingin menangkap snapshot pada titik waktu yang tepat, atur parameter FrameType ke normal. |
Apa yang harus saya lakukan jika snapshot kabur?
Penyebab | Solusi |
Parameter FrameType ke normal untuk menangkap frame reguler. Frame reguler tidak sejelas keyframe. | Jika Anda ingin menangkap snapshot yang lebih jelas, atur parameter FrameType ke intra. |
Apa yang harus saya lakukan jika snapshot terdistorsi atau rasio aspek snapshot tidak sesuai dengan yang ditentukan dalam pengaturan parameter?
Lakukan pemecahan masalah berdasarkan penyebab yang dijelaskan dalam tabel berikut:
Penyebab | Solusi |
Baik lebar maupun tinggi snapshot ditentukan, tetapi rasio aspeknya berbeda dari video input. | Disarankan untuk hanya menentukan lebar atau tinggi snapshot. Rasio aspek tetap tidak berubah berdasarkan resolusi video input. Ini mencegah distorsi gambar. |
Baik lebar maupun tinggi sel dalam sprite ditentukan, tetapi rasio aspeknya berbeda dari video input. Akibatnya, snapshot dalam sprite terdistorsi. | Disarankan untuk hanya menentukan lebar atau tinggi sel dalam sprite. Rasio aspek tetap tidak berubah berdasarkan resolusi video input. Ini mencegah distorsi gambar. |
MPS tidak kompatibel dengan rasio aspek tampilan (DAR) atau rasio aspek sampel (SAR) dari video input. | Hubungi dukungan teknis Alibaba Cloud dan berikan ID wilayah dan ID pekerjaan snapshot Anda untuk pemecahan masalah. |
Apa yang harus saya lakukan jika video input dalam mode potret tetapi snapshot dalam mode lanskap?
Video MP4 input dalam mode potret memiliki pengenal rotasi. Oleh karena itu, snapshot dalam mode lanskap. Dalam banyak kasus, video yang direkam oleh perangkat seluler memiliki pengenal rotasi.
Untuk memeriksa apakah video input memiliki pengenal rotasi, lakukan operasi berikut:
Panggil operasi SubmitMediaInfoJob untuk melihat nilai parameter Rotate. Jika nilainya -90 atau 90, video diputar 90 derajat ke kiri atau kanan. Akibatnya, mode tampilan snapshot berbeda dari video input.
Apa yang harus saya lakukan jika tidak ada sprite yang dihasilkan atau tidak ada snapshot WebVTT yang ditangkap ketika saya mengirimkan pekerjaan snapshot dalam mode sinkron?
Parameter terkait sprite atau snapshot WebVTT ditentukan ketika Anda mengirimkan pekerjaan snapshot dalam mode sinkron untuk menangkap snapshot tunggal. Anda dapat mengirimkan pekerjaan snapshot dalam mode sinkron untuk menangkap hanya satu snapshot. Pekerjaan snapshot tidak dapat menghasilkan sprite atau menangkap snapshot WebVTT. Untuk menghasilkan sprite atau menangkap snapshot WebVTT, kirimkan pekerjaan snapshot dalam mode asinkron.