小编Mat*_*dts的帖子

Python 检查损坏的视频文件(捕获 OpenCV 错误)

我正在寻找一种方法来检查视频文件是否已损坏。

我正在使用 cv2(用于 python 的 OpenCV)加载视频。如果视频文件已损坏,我想跳过该文件并转到下一个。

我发现了这个stackoverflow 问题,因此尝试了这个:

try:
    vid = cv2.VideoCapture(corrupt_video_file)
except cv2.error as e:
    print(e)
except:
    print('error')
Run Code Online (Sandbox Code Playgroud)

但我仍然收到以下错误:

[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1b2d000] moov atom not found Unable to stop the stream: Inappropriate ioctl for device OpenCV Error: Unspecified error (GStreamer: unable to start pipeline ) in cvCaptureFromCAM_GStreamer, file /home/student/programs/opencv-3.4.0/modules/videoio/src/cap_gstreamer.cpp, line 890 VIDEOIO(cvCreateCapture_GStreamer (CV_CAP_GSTREAMER_FILE, filename)): raised OpenCV exception:

/home/student/programs/opencv-3.4.0/modules/videoio/src/cap_gstreamer.cpp:890: error: (-2) GStreamer: unable to start pipeline  in function cvCaptureFromCAM_GStreamer
Run Code Online (Sandbox Code Playgroud)

似乎引发了 cpp 错误而不是 python 错误。(我从源代码编译了 opencv,其他项目需要)

是否也可以捕获那些 cpp 错误? …

python video opencv cv2

10
推荐指数
1
解决办法
7432
查看次数

标签 统计

cv2 ×1

opencv ×1

python ×1

video ×1