Python OpenCV 库函数VideoCapture 的基本属性见下表:
attribute | definition |
---|---|
cv2.VideoCapture.get(0) | 视频文件的当前播放位置,以毫秒为单位 |
cv2.VideoCapture.get(1) | 基于以0开始的被捕获或解码的帧索引 |
cv2.VideoCapture.get(2) | 视频文件的相对播放位置:0=视频开始,1=视频结尾。 |
cv2.VideoCapture.get(3) | 视频流的帧的宽度 |
cv2.VideoCapture.get(4) | 视频流的帧的高度 |
cv2.VideoCapture.get(5) | 视频的帧速率 |
cv2.VideoCapture.get(6) | 视频数据流格式的四字符代码 |
cv2.VideoCapture.get(7) | 视频文件中的帧 |
比如使用python OpenCV获得视频的时长:
视频详细信息:
使用代码获取视频时长:
import cv2
cap = cv2.VideoCapture("./Demo.avi") if cap.isOpened(): # 当成功打开视频时cap.isOpened()返回True,否则返回False# get方法参数按顺序对应上表(从0开始编号)rate = cap.get(5) # 帧速率FrameNumber = cap.get(7) # 视频文件的帧数duration = FrameNumber/rate # 帧速率/视频总帧数 是时间,单位为秒print(duration)#33.666666666666664