Я строю программу, где нужно передавать видео на сервер, потому что нет дисплея (HDMI). Я тестировал потоковую передачу с videotestsrc
и все работает нормально, но использование реальных данных является проблемой. Я не знаю, как настроить gstreamer для моих данных. Как я могу получить формат моего видео?
Я хотел бы передавать черно-белые cv :: Mat и 3chanell cv :: Mat.
Я следовал этому уроку:
https://www.google.sk/amp/s/schneide.wordpress.com/2015/03/03/streaming-images-from-your-application-to-the-web-with-gstreamer-and-icecast- часть-1 / а /
Спасибо
Вы можете напрямую использовать VideoWriter от OpenCv и передать канал в видеострайвер. Вам нужно заменить videotestsrc
с appsrc
:
float fps = 25.0f; // or the fps you desire
int fourcc = 0;
bool is_color = true; // depending on your image
cv::VideoWriter writer;
writer.open("appsrc ! vp8enc ! webmmux ! shout2send ip=127.0.0.1 port=8000 password=hackme mount=/test.webm", fourcc,fps, frame.size());
...
writer.write(frame);
writer.release();
Других решений пока нет …