Я потратил кучу времени на эту тему, но успеха так и не добился. Пробовал такие варианты:
1. h264 rtp
gst-launch v4l2src always-copy=false chain-ipipe=true ! video/x-raw-yuv,format='(fourcc)'NV12, \
width=640, height=480, framerate='(fraction)'30/1 ! dmaiaccel ! dmaienc_h264 ddrbuf=true rcalgo=0 \
bytestream=true encodingpreset=2 ratecontrol=1 intraframeinterval=46 idrinterval=46 \
targetbitrate=1000000 ! rtph264pay ! udpsink port=3000 host=192.168.1.10 sync=false enable-last-buffer=false
Этот поток видит только gstreamer, тормозов почти нет
2. mjpg tcp
gst-launch v4l2src always-copy=false chain-ipipe=true ! video/x-raw-yuv,format=\(fourcc\)NV12, \
width=640, height=480, framerate=\(fraction\)30/1 ! queue ! dmaienc_mjpeg ! multipartmux ! tcpserversink \
port=3000 sync=false
видит vlc, лаг большой, при этом gstremer на v2r иногда падает.
OpenCV тоже видит, но при этом gstremer на v2r падает почти сразу
3. mjpg udp
gst-launch -v v4l2src chain-ipipe=true always-copy=FALSE ! 'video/x-raw-yuv,width=640, height=480, framerate=(fraction)30/1' ! dmaienc_mjpeg qValue=30 ! udpsink port=5000 host=192.168.1.10
видит только gstreamer, лага нет совсем!
4. h264 mpegts
gst-launch v4l2src always-copy=false chain-ipipe=true ! video/x-raw-yuv,format='(fourcc)'NV12, width=640, height=480, framerate='(fraction)'30/1 ! dmaiaccel ! dmaienc_h264 ddrbuf=true rcalgo=0 bytestream=true encodingpreset=2 ratecontrol=1 intraframeinterval=46 idrinterval=46 targetbitrate=1000000 ! queue ! mpegtsmux name=mux ! udpsink port=1234 host=192.168.1.10 sync=false enable-last-buffer=false
openCV видит, но с огромным лагом
При этом v2r загружена на 100%, так что это не вариант
5 h264 rtp и потом рестрим в mpegts
vlc отлично видит (правда с лагом), но почему-то не видит openCV
6 mjpg udp и потом рестрим
почему-то не получилось, пока не разобрался почему
Короче, надо пробовать разные заклинания
Скорее всего копать надо в сторону стрима с v2r по udp, приёма в gstreamer и потом рестрима в приемлемый для openCV формат
PS: Я тут на неделю в отпуск улетаю, так что вернусь к этой теме не скоро