#c #stream #video-streaming #gstreamer #gstreamer-1.0
Вопрос:
Я транслирую MJPEG с помощью RTSP-сервера GStreamer и использую кодер jpegenc, но я хотел бы иметь возможность изменять битрейт, поэтому вместо этого я пытаюсь использовать avenc_mjpeg, но, похоже, не могу заставить его работать. Я что-то упускаю?
Это работает:
string server_configs = "v4l2src device=/dev/video2 ! jpegenc ! rtpjpegpay name=pay0 pt=96";
gst_rtsp_media_factory_set_launch(factory, server_configs.c_str());
Это не работает:
string server_configs = "v4l2src device=/dev/video2 ! avenc_mjpeg ! rtpjpegpay name=pay0 pt=96";
gst_rtsp_media_factory_set_launch(factory, server_configs.c_str());
Я также попытался изменить формат ввода кодера следующим образом:
string server_configs = "v4l2src device=/dev/video2 ! video/x-raw, format=I420 ! avenc_mjpeg ! rtpjpegpay name=pay0 pt=96";
gst_rtsp_media_factory_set_launch(factory, server_configs.c_str());
Единственная ошибка, которую дает мне GST_DEBUG=3, — это:
0:00:01.117815741 12592 0x7fe5f0003520 ERROR rtspclient rtsp-client.c:1077:find_media: client 0x7fe61c2245e0: can't prepare media
Любая помощь будет признательна, спасибо!