Picam için hangi akış çözümü en küçük gecikmeye sahip?


9

Bu yazı VLC kullanarak nasıl akış yapılacağını gösterir. Güzel çalışıyor ve basit, ama bana ikinci bir gecikme veriyor. Bu yazı GStreamer kullanıyor ve 0.3 saniye gecikmeye sahip; Daha az istiyorum.

Kodlamayı hızlandırmak için Raspberry Pi grafik yongasını kullanmak mümkün müdür?


Henüz mümkün değil. 0.3ms gecikme çok iyi ve V2L eksikliği nedeniyle daha iyi olmayacak (şu andan itibaren). Belki bu yardımcı olacaktır
Piotr Kula

@ppumkin Bence OP gecikmenin milisaniye değil .3 saniye olduğunu söyledi. Ayrıca, V4L mi demek istediniz?
syb0rg

Evet 3ms diye düşünüyordum. Video4Linux sürücüsü? Yoksa başka bir şey mi deniyor. Bilirsin. Yerel sürücü.
Piotr Kula

@ppumkin Ahh, o zaman yanlış olur. V4L2 sürücüleri NOOBS v1.3.3'e dahil edildi .
syb0rg

Yanıtlar:


9

Ubuntu 14.10 ve Gstreamer ile 1280 x 720 @ 60Hz ile 100 ila 116 ms gecikmeye ulaşıyorum.

Beni doğru yola koyan @Antonvh tankları. Burada ikinci referans için çözüm üretiyorum.

Pi'den akış yapmak için:

raspivid -t 0 -b 2000000  -fps 60 -w 1280 -h 720 -o - \
  | gst-launch-1.0 -e -vvv fdsrc ! h264parse ! rtph264pay pt=96 config-interval=5 \ 
  ! udpsink host=10.42.0.1 port=5001

Bilgisayarınızda gst-0.10 ile almak ve sanal bir v4l2 cihazına göndermek için (gerçekten v4l2loopback'e ihtiyacınız var ):

gst-launch -v udpsrc port=5001 ! application/x-rtp, payload=96 ! rtph264depay \ 
! ffdec_h264 ! ffmpegcolorspace ! v4l2sink device=/dev/video1

Ardından cihazı /dev/video1v4l2 yakalamayı destekleyen herhangi bir yazılımda açabilirsiniz.

Bir gst-1.0 çözümü için (v4l2loopback gst-1.0 ile çalışmaz), Antonvh blog gönderisini görmenizi sağlar .


4

200ms gecikmeyi başardım! Hile: Pi'den uzak tarafta okuduğunuzdan daha az kare gönderin, bu arabellek boş kalmasını sağlar.

İşte RPi'yi kronometre çekerken çektiğim bir resim . Zaman farkını gösterir.

Kullandığım tarif bu. İlk olarak dizüstü bilgisayarda (Mac) bunu yapın:

nc -l 5001 | mplayer -fps 24 -cache 1024 -

sonra RPI akışına başlayın:

raspivid -t 999999 -w 1280 -h 720 -fps 20 -o - | nc 192.168.178.22 5001

Emin ol:

  • Önce mplayer'ı yükleyin. Sadece Homebrew yöntemi benim için çalıştı. Düzenli indirme kesildi.
  • Yukarıdaki ip numarasını dizüstü bilgisayarınızın numarasına değiştirin.

Bu akıllıca bir numara! Yeni UV4L sürücüsü için de işe yarayıp yaramadığını merak ediyorum
Piotr Kula

Bu çözümün sorunu, oynatma tarafından çok fazla kekemelik getirmesidir. Buna bir çözüm bulup bulamadığınızı merak ediyordum.
9a3eedi

1

Bu video tarifini kullanıyorum: http://archpi.dabase.com/#sending-and-receiving-pi-camera-video-over-the-network

Https://github.com/thaytan/gst-rpicamsrc'i denediniz mi? Bu biraz daha akıcı olmalı. Tbh, denemekten rahatsız olamam.

0.3s gecikmesi oldukça iyi.


1
Linkler için teşekkürler! Sanırım şu anda 0.3 saniyeden daha az bir gecikmem var, hala çözümü belgelemem ve tam olarak ölçmem gerekiyor. Yakında yayınlanacak. Ölçümlerim 0.3'ten fazla olduğunu kanıtlarsa diğer tarifi deneyeceğim.
Antonvh

@Antonvh Araştırma / ölçümler nasıl gidiyor? Bu cevap size daha iyi sonuçlar veriyor mu?
RPiAwesomeness
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.