1
我用Python編寫了一個用Opencv播放一些視頻的程序......它在Windows 10中正常工作。 但我想用Raspberry運行它,問題是視頻將會打得太慢了。 我使用OMXplayer,它播放文件非常流暢。所以,問題不在於樹莓(我想是這樣......)Opencv播放視頻太慢
我簡化我的代碼:
print "---Playing the Videos and Images---"
cap = cv2.VideoCapture(str(VideoPath))
while cap.isOpened():
ret, frame = cap.read()
if ret == True:
cv2.imshow('videoWindow',frame)
if cv2.waitKey(25) & 0xFF == ord('q'):
a=2
break
cv2.destroyAllWindows()
print "!...Done...!"
你能告訴我是什麼問題?
AFAIK OMXPlayer是硬件加速(幀解碼在GPU上,並直接發送到顯示緩衝區)。 OpenCV不支持OMXPlayer,所以它可能使用ffmpeg/gstreamer/v4l/etc。解碼CPU上的幀。希望使用較低分辨率的視頻版本可以加速這一點。另一種解決方法聽起來有些複雜/過度:獲取OMXPlayer資源,複製處理解碼像素的部分,然後將這些像素(以正確的順序)發送到'cv :: Mat',並讓OpenCV完成剩下的處理。 –