摄像头抓取保存帧成视频随笔记录

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

作者:KoiBana

出处:https://www.cnblogs.com/KoiBana/p/18420492

版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。

posted @   绯色鱼  阅读(6)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· 字符编码:从基础到乱码解决
· Open-Sora 2.0 重磅开源!
more_horiz
keyboard_arrow_up light_mode palette
选择主题
点击右上角即可分享
微信分享提示