尝试在OpenCV-Python中使用gstreamer参数初始化cv2.VideoWriter时出现分段错误

时间:2019-01-11 04:05:17

标签: python opencv video segmentation-fault gstreamer

我正在尝试使用gstreamer来将OpenCV帧转换为rtp流,但是即使打开网络摄像头和其他文件也遇到麻烦。

我在使脚本正常工作方面遇到麻烦,所以我运行了此

export OPENCV_VIDEOIO_DEBUG=TRUE

这是我使用的代码:

# Cam properties
fps = 30.
cap = cv2.VideoCapture(0)

# Set camera properties
frame_width = cv2.CAP_PROP_FRAME_WIDTH
frame_height = cv2.CAP_PROP_FRAME_HEIGHT

cap.set(cv2.CAP_PROP_FPS, fps)

# Define the gstreamer sink
gst_str_rtp = "appsrc ! videoconvert ! x264enc noise-reduction=10000 tune=zerolatency byte-stream=true threads=4 ! h264parse ! mpegtsmux ! rtpmp2tpay ! udpsink host=127.0.0.1 port=5000"

# Check if cap is open
if cap.isOpened() is not True:
    print "Cannot open camera. Exiting."
    quit()

# Create videowriter as a SHM sink
out = cv2.VideoWriter(gst_str_rtp, 0, fps, (frame_width, frame_height), True)

每次尝试运行此错误时,都会收到此错误:

[ WARN:0] VIDEOIO(cvCreateCameraCapture_V4L(index)): trying ...

[ WARN:0] VIDEOIO(cvCreateCameraCapture_V4L(index)): result=0x1f5a7a0 ...

[ WARN:0] VIDEOIO(cvCreateVideoWriter_FFMPEG_proxy(filename, fourcc, fps, frameSize, isColor)): trying ...

Segmentation fault (core dumped)

我该怎么办?

0 个答案:

没有答案