cv2间隔指定秒抓取视频
以上为一些常见编码格式:
I420,YUV编码,视频格式为.avi
PIM1,MPEG-1编码,视频格式为.avi
XVID,MPEG-4编码,视频格式为.avi
THEO,Ogg Vorbis,视频格式为.ogv
FLV1,Flash视频,视频格式为.flv
AVC1,H264编码
DIV3,MPEG-4.3编码
DIVX,MPEG-4编码
MP42,MPEG-4.2编码
MJPG,motion-jpeg编码
U263,H263编码
I263,H263I编码
MP4V,视频格式为.mp4
这里是读取摄像头,如果是读取mp4等文件一定要注意格式。
import cv2
import time
# 抓取间隔
timekey = 10
# 每秒的帧数
FPS = 30
# 计数器
count = 0
while True:
cap = cv2.VideoCapture('rtsp://ip....等参数')
cap.set(cv2.CAP_PROP_FPS, FPS)
fourcc = cv2.VideoWriter_fourcc(*'MP4V')
fps = cap.get(cv2.CAP_PROP_FPS)
size = (int(cap.get(cv2.CAP_PROP_FRAME_WIDTH)), int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT)))
t = time.strftime("%m-%d-%H-%M-%S", time.localtime(time.time()))
out = cv2.VideoWriter("video-" + t + ".mp4", fourcc, fps, size)
while (cap.isOpened()):
ret, frame = cap.read()
# ret 是否读取到图片
if ret == True:
out.write(frame)
else:
break
count += 1
if count == FPS*timekey:
cap.release()
out.release()
count = 0
continue
标签:编码,MPEG,cap,cv2,抓取,视频格式,FPS,随笔,摄像头
From: https://www.cnblogs.com/KoiBana/p/18420492