Благодаря помощи "thiagoss" я сделал эти конвейеры ниже для gstreamer. один захватывает с помощью веб-камеры, а другой - из фрейм-граббера. Дело в том, что я не знаю, как их объединить (я хочу, чтобы они оба записывались в отдельные контейнеры). Можете ли вы поделиться своими идеями или решениями о том, как синхронизировать два конвейера?
gst-launch-1.0 v4l2src device=/dev/video1 ! videorate ! 'image/jpeg,framerate=30/1,width=1920,height=1080' ! jpegparse ! avimux ! filesink location=/home/sina/Desktop/Recordings/video.avi . -v
и
gst-launch v4l2src device=/dev/video0 ! 'video/x-raw-yuv, framerate=24/1, width=1024, height=768' ! x264enc ! mpegtsmux ! filesink location=/home/sina/Desktop/Recordings/Screen.ts . -v
Один из конвейеров является gstreamer 1.0, другой использует 0.10 (значение по умолчанию запуска GST). Используя 1,0 рекомендуется.
у Вас могут просто быть обе строки запуска в той же команде gst-launch-1.0. Вы также могли бы хотеть добавить некоторые очереди прежде или после кодеров для имения некоторой буферизации в конвейере
gst-launch-1.0 v4l2src device=/dev/video1 ! videorate ! 'image/jpeg,framerate=30/1,width=1920,height=1080' ! jpegparse ! avimux name=muxer ! filesink location=/home/sina/Desktop/Recordings/video.avi v4l2src device=/dev/video0 ! 'video/x-raw, framerate=24/1, width=1024, height=768' ! x264enc ! mpegtsmux ! filesink location=/home/sina/Desktop/Recordings/Screen.ts -v