[問題] 關於使用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