gstreamer with opencv如何设置icecast2

时间:2018-02-13 18:26:08

标签: c++ opencv gstreamer icecast

我正在构建必须将视频流式传输到服务器的程序,因为没有可用的显示(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-part-1/amp/

感谢

1 个答案:

答案 0 :(得分:0)

您可以直接使用OpenCv的视频写入器并将管道传递给videwriter。您需要将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();