Saya memiliki webcam C920 logitech. Ini memiliki kemampuan untuk langsung menyandikan video dalam H264.
Saya ingin mereproduksi apa yang dilakukan dengan Beaglebone, tetapi menggunakan Raspberry Pi: kirim aliran H264 ke jaringan . Raspberry Pi kemudian hanya di sini untuk mengemas aliran dalam RTP, kompresi video dilakukan oleh webcam itu sendiri. Mode H264 diberlakukan menggunakan video4linux.
Sejauh ini, dan jika saya menggunakan komputer biasa dengan versi terbaru Ubuntu, ia berfungsi menggunakan VLC sebagai server atau GStreamer. Sebagai contoh, jika saya menjalankan Raspberry Pi server VLC menggunakan perintah:
cvlc --sout=#rtp{sdp=rtsp://:8554/test} 'v4l2:///dev/video0:chroma=H264:width=800:height=600:fps=30'
... dan kemudian jika saya membaca aliran dengan VLC di komputer lain, semuanya benar.
Namun, jika saya menggunakan raspberry Pi untuk mengirim streaming video, hasilnya cukup buruk. Banyak sampah di gambar segera setelah sesuatu bergerak. Tombol gambar diterima dengan baik setiap 10 detik, tetapi sementara itu, itu tidak cukup baik dibandingkan dengan aliran dari komputer biasa.
Saya juga mencoba metode yang dijelaskan untuk beaglebone dengan utilitas "tangkap" yang disediakan : ok jika saya streaming dari komputer nyata, masalah sampah yang sama jika saya streaming dari Raspberry Pi.
Ini bukan masalah jaringan: Saya melakukan beberapa pengecekan jaringan dengan Wireshark dan statistik VLC, saya tidak punya paket loss. Saya mencoba dengan Raspbian, dan Arch Linux untuk Raspi (gstreamer 0.10 di raspbian, gstreamer 1.0 di Arch Linux).
Saya tidak tahu apakah itu relevan atau tidak, tetapi saya juga menguji dengan versi dukungan soft float dari Raspbian. Pembaruan harus dilakukan terlebih dahulu untuk menggunakan kernel 3.2; tetapi masalah yang sama, video memiliki beberapa sampah.
Adakah yang bisa saya lakukan untuk meningkatkan kualitas video?