我正试图通过GStreamer将视频从opencv/python流式传输到rtsp简单服务器。我可以在vlc中很好地观看视频,但我使用的在线流媒体应用程序非常挑剔。我需要流的像素格式为yuv420p
。如何使用GStreamer将流转换为这种格式?
这是我当前使用yuv444p:创建流的代码
out = cv2.VideoWriter('appsrc ! videoconvert' +
' ! x264enc speed-preset=ultrafast bitrate=600 key-int-max=40' +
' ! rtspclientsink location=rtsp://localhost:554/video',
cv2.CAP_GSTREAMER, 0, fps, (width, height), True)
我正在寻找相当于-pix_fmt yuv420p
的GStreamer
.. videoconvert ! video/x-raw, format=I420 ! x264enc ..
你也可以告诉x264
使用一个特定的配置文件来代替420:
.. x264enc ! video/x-h264, profile=main ! ..
这两种方法都应该有效。