[问题] 关于使用OpenCV录影的问题

楼主: st40182 (天羽)   2018-06-16 19:48:03
这是我的程式码
==============================================================================
import cv2
cap = cv2.VideoCapture(2)
cap.set(cv2.CAP_PROP_FRAME_WIDTH, 1920)
cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 1080)
while True:
ret, frame = cap.read()
cv2.imshow("capture", frame)
key=cv2.waitKey(1)
if key & 0xFF == ord('c'):
fourcc = cv2.VideoWriter_fourcc(*'XVID')
out = cv2.VideoWriter('output.avi', fourcc, 60.0, (1920, 1080))
out.write(frame)
elif key & 0xFF == ord('q'):
break
cap.release()
out.release()
cv2.destroyAllWindows()
==============================================================================
目的是希望说按下c键的时候
就会开始录影
而按下q键的时候
就会结束录影并关闭视窗
但是目前执行后
虽然有成功写成了一个avi档
但是无法拨放
会显示影片已暂停
再按一次拨放也是会再次的暂停
想请问要怎么修改才比较好?
另外还有一点就是如果想改成为输出成mp4档的话
那影片编码要改成为用什么会比较适合?
作者: Mchord (Mchord)   2018-06-16 23:27:00
你这样写是按著c才会进去if内吧,而且Videowriter每次要重新开一个?建议参考opencv的videowriter文件
作者: neil987 (R5大小姐-EX人品崩坏)   2018-06-18 16:55:00
while(startFlag): do something

Links booklink

Contact Us: admin [ a t ] ucptt.com