Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Buka konsol Kinesis Video
Aliran video yang dikirim dari Raspberry Pi muncul di konsol.
catatan
Mungkin perlu beberapa detik sebelum video muncul di konsol.
Setelah streaming diputar, Anda dapat bereksperimen dengan fitur-fitur berikut di konsol:
-
Di bagian Pratinjau video, gunakan kontrol navigasi untuk memundurkan atau mempercepat aliran.
-
Di bagian Stream info, tinjau codec, resolusi, dan bit rate aliran. Resolusi dan nilai bit rate diatur dengan sengaja rendah pada Raspberry Pi untuk meminimalkan penggunaan bandwidth untuk tutorial ini.
Untuk melihat CloudWatch metrik Amazon yang sedang dibuat untuk streaming Anda, pilih Lihat metrik aliran di. CloudWatch
-
Di bawah periode penyimpanan data, perhatikan bahwa aliran video dipertahankan selama satu hari. Anda dapat mengedit nilai ini dan mengaturnya ke Tidak ada retensi data, atau menetapkan nilai dari satu hari hingga beberapa tahun.
-
Di bawah enkripsi sisi server, perhatikan bahwa data Anda sedang dienkripsi saat istirahat menggunakan kunci yang dikelola oleh (). AWS Key Management Service AWS KMS
Masalah pemutaran
Berikut ini adalah beberapa masalah pemutaran yang sering ditemui, dan cara memecahkan masalah mereka.
Tidak ada media, tetapi ada PERSISTED Aks di log
Jika Anda melihat PERSISTED Ack di log, Kinesis Video Streams telah berhasil menyerap dan menyimpan media yang diunggah oleh. kvssink
Aks yang diterima dari Kinesis Video Streams terlihat seperti ini. Di dalamJSON, lihat nilai untuk "EventType"
kuncinya.
{"EventType":"RECEIVED","FragmentTimecode":252200,"FragmentNumber":"12345678901234567890123456724587702494771079511"}
{"EventType":"BUFFERING","FragmentTimecode":252467,"FragmentNumber":"12345678901234567890123456781729223736853277017"}
{"EventType":"RECEIVED","FragmentTimecode":252467,"FragmentNumber":"12345678901234567890123456781729223736853277017"}
{"EventType":"BUFFERING","FragmentTimecode":253000,"FragmentNumber":"12345678901234567890123456738870744847093249408"}
{"EventType":"PERSISTED","FragmentTimecode":252200,"FragmentNumber":"12345678901234567890123456724587702494771079511"}
{"EventType":"PERSISTED","FragmentTimecode":252467,"FragmentNumber":"1234567890123456789012345671729223736853277017"}
Resolusi:
Tunggu satu atau dua menit di konsol Kinesis Video Streams, lalu gunakan panah kanan ganda. Jika tidak ada media yang muncul, verifikasi bahwa aliran Anda dikirim ke wilayah yang benar dan tinjau ejaan nama aliran. Anda dapat menemukan informasi ini di log.
Lihat Menyediakan wilayah untuk kvssink untuk informasi lebih lanjut tentang bagaimana kvssink menentukan wilayah mana yang akan digunakan.
Media membutuhkan waktu lama untuk memuat di AWS Management Console
penting
Pengalaman pemutaran konsol berbeda dari pengalaman DASH pemutaran HLS dan pemutaran. Gunakan halaman web yang dihosting
Pemuatan media yang lambat di konsol sering dikaitkan dengan pengkodean dan fragmentasi video.
Dasar-dasar Pengkodean Video:
-
Encoder H.264 dan H.265 menggunakan key-frame (I-Frames) dan predicted-frame (P-Frames) untuk kompresi yang efisien.
-
Key-frame berisi data gambar lengkap, sedangkan P-frame hanya berisi perubahan dari frame sebelumnya.
-
“Interval bingkai kunci” menentukan seberapa sering bingkai kunci terjadi dalam aliran video.
Fragmentasi dalam Streaming:
-
Di Kinesis Video Streams, fragmen baru dimulai dengan setiap bingkai kunci. Untuk informasi selengkapnya, lihat Model data Kinesis Video Streams.
-
Panjang fragmen (dalam detik) dapat diperkirakan sebagai: interval bingkai kunci ÷ frame rate
Contoh:
Untuk streaming dengan interval kunci-frame 30 dan frame rate 15 fps:
Panjang Fragmen = 30 ÷ 15 = 2 detik
Karena interval bingkai kunci yang lebih besar, fragmen yang lebih lama meningkatkan latensi di media streaming.
Resolusi:
Untuk meningkatkan waktu pemuatan, pertimbangkan untuk mengurangi interval bingkai kunci. Ini akan membuat fragmen yang lebih pendek, mengurangi latensi, tetapi juga akan meningkatkan ukuran file video.
Untuk x264enc
GStreamer elemen, Anda dapat secara eksplisit mengatur interval kunci-bingkai melalui properti: key-int-max
x264enc bframes=0 key-int-max=60
Saat meninjau keluaran log, perhatikan seberapa sering klien yang mengunggah menerima ACKs dari Kinesis Video Streams. Semakin banyak keyframe yang dihasilkan, semakin banyak ACKs yang dikembalikan.
Media terdistorsi atau memiliki artefak
Untuk mengatasi masalah ini, pastikan semua kabel terhubung erat. Tinjau output libcamera-hello
(atau raspistill
untuk kamera Pi lama) untuk modul kamera.
Dalam GStreamer pipa Anda, ganti kvssink
dengan autovideosink
atau matroskamux
danfilesink
. Sebagai contoh:
... x264enc tune=zerolatency speed-preset=ultrafast bframes=0 key-int-max=60 byte-stream=true ! h264parse ! matroskamux ! filesink location=output.mkv
Tinjau file output untuk filesink
atau pemutar media yang terbuka saat menggunakan autovideosink
untuk melihat apakah artefak juga ada di sana.
Juga tinjau output dari pipa berikut:
gst-launch-1.0 autovideosrc ! videoconvert ! autovideosink
Menambahkan elemen ke pipeline Anda, seperti dewarp
Tinjau codec keluaran yang didukung untuk kamera Anda dan sesuaikan elemen sesuai kebutuhan.
Misalnya, jika USB kamera Anda hanya mendukung JPEG output, maka Anda perlu menggunakan jpegdec
elemen jpegparse
dan untuk mengubah media sebelum menyandikannya menjadi H.264 menggunakan. x264enc
Cari bantuan di GStreamer forum untuk pengguna lain dengan saluran pipa dan/atau pengaturan webcam serupa.