Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Putar kembali media dari aliran video Kinesis Anda
Buka konsol Kinesis Video Streams
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 Pr atinjau Video, gunakan kontrol navigasi untuk memundurkan atau memajukan aliran.
-
Di bagian info Stream, tinjau codec, resolusi, dan bit rate aliran. Resolusi dan nilai bit rate diatur secara 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 Server-side enkripsi, perhatikan bahwa data Anda dienkripsi saat diam menggunakan kunci yang dikelola oleh AWS Key Management Service (AWS KMS).
Masalah pemutaran
Berikut ini adalah beberapa masalah pemutaran yang sering ditemui, dan cara memecahkannya.
Tidak ada media, tetapi ada Persisted Acks di log
Jika Anda melihat Persisted Acks di log, Kinesis Video Streams telah berhasil menyerap dan menyimpan media yang diunggah oleh. kvssink Ack yang diterima dari Kinesis Video Streams terlihat seperti ini. Di JSON, lihat nilai untuk "EventType" kunci.
{"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 streaming Anda dikirim ke wilayah yang benar dan tinjau ejaan nama streaming. Anda dapat menemukan informasi ini di log.
Lihat Berikan wilayah ke kvssink untuk informasi lebih lanjut tentang bagaimana kvssink menentukan wilayah mana yang akan digunakan.
Media membutuhkan waktu lama untuk memuat Konsol Manajemen AWS
penting
Pengalaman pemutaran konsol berbeda dari pengalaman pemutaran HLS dan DASH. Gunakan halaman web yang di
Media dapat memuat lambat di konsol karena bandwidth jaringan yang buruk atau perangkat yang terbatas, tetapi juga dapat terkait dengan pengkodean dan fragmentasi video.
Dasar-dasar Pengkodean Video:
-
H.264 dan H.265 encoder menggunakan key-frames (I-Frames) dan predicted-frames () untuk kompresi yang efisien. P-Frames
-
Key-frames berisi data gambar lengkap, sementara P-frames 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 Streaming Video Kinesis.
-
Panjang fragmen (dalam detik) dapat diperkirakan sebagai: interval bingkai kunci ÷ kecepatan bingkai
Contoh:
Untuk streaming dengan interval bingkai kunci 30 dan kecepatan bingkai 15 fps:
Panjang Fragmen = 30 ÷ 15 = 2 detik
Karena interval key-frame yang lebih besar, fragmen yang lebih panjang meningkatkan latensi dalam 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 elemen x264enc GStreamer, Anda dapat secara eksplisit mengatur interval key-frame melalui properti: key-int-max
x264enc bframes=0 key-int-max=60
Saat meninjau output log, perhatikan seberapa sering klien yang mengunggah menerima ACK dari Kinesis Video Streams. Semakin banyak keyframe yang dihasilkan, semakin banyak ACK yang dikembalikan.
Media terdistorsi atau memiliki artefak
Untuk memecahkan masalah ini, pastikan semua kabel terhubung erat. Tinjau output libcamera-hello (atau raspistill untuk kamera Pi lama) untuk modul kamera.
Di pipeline GStreamer Anda, ganti kvssink dengan autovideosink atau matroskamux dan. filesink 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 kamera USB Anda hanya mendukung output JPEG, maka Anda perlu menggunakan jpegdec elemen jpegparse dan untuk mengubah media sebelum mengkodekannya menjadi H.264 menggunakanx264enc. Cari bantuan di forum GStreamer untuk pengguna lain dengan pengaturan and/or web cam pipeline serupa.