gstreamer из потока RTSP, изменение разрешения

У меня Raspberry Pi работает ноль v4l2rtspserver и передачу потока RTSP с кодированными H264 кадрами 1640x1232. мне бы хотелось gst-launch-1.0 подключиться к нему, изменить его разрешение и сбросить его куда-нибудь.

Так как я не могу понять это правильно, и так как мой history | grep gst-launch | wc -l отметок более 500, я думал, что умоляю о помощи.

Для тех, кто интересуется, это моя проблема: Raspberrypi Zero слишком медленный для запуска MotionEyeOS, и поэтому я хотел бы оптимизировать обнаружение движения, запустив motion в уменьшенном видеопотоке (160x120, из канала или устройства обратной связи), сохраняя при этом полномасштабный видеопоток (предпочтительно через RTSP, но также все остальное будет в порядке). Другими словами, я пытаюсь разделить вывод с камеры на 2 потока и изменить разрешение одного потока.

Любые другие настройки для достижения этого (я пробовал несколько: v4l2loopback, ffmpeg + ffserver, mjpeg_streamer и т.д.) было бы хорошо.

1 ответ

Я наконец нашел это. Итак... если у вас есть v4l2rtspserver работает с параметрами по умолчанию, gstreamer 1.0 Трубопровод для изменения размера видео на лету:

gst-launch-1.0 -e rtspsrc location="rtsp://127.0.0.1:8554/unicast" ! capsfilter caps="application/x-rtp, media=(string)video, payload=(int)96, encoding-name=(string)H264" ! queue ! rtph264depay ! h264parse ! avdec_h264 ! queue ! videoconvert ! videoscale ! video/x-raw,width=160,height=120 ! avenc_h264_omx ! h264parse ! matroskamux ! filesink location=./video.mkv

Другие вопросы по тегам