Поток Gstreamer h264 из c920 v4l2loopback не работает

#gstreamer #h.264 #v4l2 #logitech #v4l2loopback

#gstreamer #h.264 #v4l2 #logitech #v4l2loopback

Вопрос:

Я уже месяц работаю над проектом с cubieboard2 и веб-камерой logitech c920, после долгих поисков и пробных ошибок я решил использовать gstreamer v4l2loopback для отправки аппаратно закодированного потока h264, который обеспечивает c920 на vlc, и добавить textoverlay с помощью этой программы.

Проблема возникла, когда я попытался использовать gstreamer с v4l2loopback. Если я использую необработанный поток от logitech, он работает нормально:

 gst-launch-1.0 -v v4l2src ! "video/x-raw,format=YUY2,width=640,height=480,framerate=30/1" ! queue ! v4l2sink device=/dev/video1 sync=0
  

также с этим все в порядке

 gst-launch-1.0 -v -e uvch264src device=/dev/video0 name=src auto-start=true      src.vfsrc ! queue ! video/x-raw,format=(string)YUY2,width=320,height=240,framerate=10/1 ! v4l2sink device=/dev/video1 sync=0
  

Но когда я использую поток h264:

 gst-launch-1.0 -v -e uvch264src device=/dev/video0 name=src auto-start=true src.vidsrc ! queue ! video/x-h264,width=1920,height=1080,framerate=30/1 ! v4l2sink device=/dev/video1 sync=0
  

Он не работает, выдает сообщение «потоковая задача приостановлена, причина не связана (-1)»
любопытно, что программа выводит разные шапки из тех, которые я указал в конвейере:

/GstPipeline:pipeline0/ GstUvcH264Src: src.GstGhostPad: vfsrc: caps = video/ x-raw, формат = (строка) YUY2, ширина = (int) 2304, высота = (int) 1536, соотношение сторон в пикселях = (доля) 1/1, режим чересстрочной развертки = (строка)прогрессивный, частота кадров = (доля) 2/1 / GstPipeline:pipeline0/GstUvcH264Src: src.gsthostpad:vfsrc.GstProxyPad:proxypad0: caps = video / x-raw, формат =(строка) YUY2, ширина =(int) 2304, высота = (int) 1536, соотношение сторон в пикселях =(дробь) 1/1, режим чередования = (строка) прогрессивный, частота кадров = (дробь) 2/1

Я совершенно уверен, что проблема связана с этим, но я не знаю, как продолжать пытаться решить эту проблему, любая помощь будет очень признательна.

Я использую:

  • v4l2loopback (0.8.0)
  • Gstreamer 1.2.4
  • cubieboard2 (компьютер arm)
  • веб-камера logitech c920

Комментарии:

1. Добавьте GST_DEBUG=3 или GST_DEBUG=4 перед вашим gst-launch , чтобы увидеть дополнительную информацию об отладке.

2. Спасибо за быстрый ответ, извините за задержку, я переезжал из своей квартиры в эти выходные и оставил проект немного в стороне. Вот вывод GST_DEBUG = 4: justpaste.it/g2fr