使用python3+opencv3.3.1环境将视频流保存为本地视频文件,具体内容如下

1、利用opencv中的VideoCapture类获取视频流的链接,通过cv2的方法得到该视频流的帧数和每帧大小。

2、使用VideoWriter类进行视频编码

3、通过VideoCapture的read()方法进行视频流解码成每一帧

4、获取到每一帧frame,我们就可以对该帧做图像算法(例如识别、图像加强、灰度变换等)

import cv2

from matplotlib import pyplot as plt

#通过cv2中的类获取视频流操作对象cap

cap = cv2.VideoCapture('rtsp://admin:passwd@10.130.10.111:554/MPEG-4/ch1/main/av_stream')

#调用cv2方法获取cap的视频帧(帧:每秒多少张图片)

fps = cap.get(cv2.CAP_PROP_FPS)

print(fps)

#获取cap视频流的每帧大小

size = (int(cap.get(cv2.CAP_PROP_FRAME_WIDTH)),

int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT)))

print(size)

#定义编码格式mpge-4

fourcc = cv2.VideoWriter_fourcc('M', 'P', '4', '2')

#定义视频文件输入对象

outVideo = cv2.VideoWriter('saveDir.avi',fourcc,fps,size)

#获取视频流打开状态

if cap.isOpened():

rval,frame = cap.read()

print('ture')

else:

rval = False

print('False')

tot=1

c=1

#循环使用cv2的read()方法读取视频帧

while rval:

rval,frame = cap.read()

cv2.imshow('test',frame)

#每间隔20帧保存一张图像帧

# if tot % 20 ==0 :

# cv2.imwrite('cut/'+'cut_'+str(c)+'.jpg',frame)

# c+=1

tot+=1

print('tot=',tot)

#使用VideoWriter类中的write(frame)方法,将图像帧写入视频文件

outVideo.write(frame)

cv2.waitKey(1)

cap.release()

outVideo.release()

cv2.destroyAllWindows()

结果:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

本文标题: python3将视频流保存为本地视频文件

本文地址: http://www.cppcns.com/jiaoben/python/230612.html

python 保存视频流_python3将视频流保存为本地视频文件相关推荐

  1. python怎么保存文件视频教程_python3将视频流保存为本地视频文件

    使用python3+opencv3.3.1环境将视频流保存为本地视频文件,具体内容如下 1.利用opencv中的VideoCapture类获取视频流的链接,通过cv2的方法得到该视频流的帧数和每帧大小 ...

  2. python播放本地视频_python opencv 读取本地视频文件 修改ffmpeg的方法

    Python + opencv 读取视频的三种情况: 情况一:通过摄像头采集视频 情况二:通过本地视频文件获取视频 情况三:通过摄像头录制视频,再读取录制的视频 摄像头采集.本地视频文件的读取.写视频 ...

  3. Python调用OpenCV接口播放本地视频文件、本地和网络摄像头

    1 前言 上篇文章介绍了在WIN10系统上, C++调用OpenCV接口,播放本地视频文件.本地和网络摄像头视频.本篇我们来看一下,Python如何调用OpenCV接口,做同样的事情. 序号 视频来源 ...

  4. python(opencv + pyaudio + moviepy)实现录制音视频文件并合并

    使用opencv录制视频文件 def record_webcam(filename):"""cv2.VideoCapture(0, cv2.CAP_DSHOW)参数1:打 ...

  5. 利用python播放本地视频文件

    python结合opencv播放视频文件,代码如下: # 视频处理 video = cv2.VideoCapture("C:/Users/Administrator/Desktopideo. ...

  6. 清空本地_PyQt5播放实时视频流或本地视频文件

    一.编辑UI 编辑UI如下图所示: 二.新建视频播放类Display 定义如下初始化函数 def __init__(self, ui, mainWnd):self.ui = uiself.mainWn ...

  7. Windows环境下视频文件转成RTSP视频流和RTMP流

    文章目录 一. 需要的工具 二.部署EasyDarwin服务器 三.ffmpeg命令行推rtsp流进行测试 四.采用ffmpeg代码方式推rtsp流到服务器 五.使用nginx搭建RTMP服务器 一. ...

  8. Python使用scipy包将稀疏矩阵保存为Mtx格式和npz格式文件实战

    Python使用scipy包将稀疏矩阵保存为Mtx格式和npz格式文件实战 目录 Python将稀疏矩阵保存为Mtx格式和npz格式文件实战 #导入包和仿真数据

  9. Python将Pandas中Dataframe数据保存为gzip/zip文件:gzip压缩文件、zip压缩文件

    Python将Pandas中Dataframe数据保存为gzip/zip文件:gzip压缩文件.zip压缩文件 目录 Python将Pandas中Dataframe数据保存为gzip/zip文件:gz ...

最新文章

  1. 三十一、二叉排序树的创建、删除和遍历
  2. 【总结整理】关于IE6的兼容性
  3. 2020年阿里大数据一面面经,看看你还有啥不知道的?
  4. php计算器使用方法,php--计算器的算法实现(-)
  5. mac os 开启redis_mac os 命令行安装 启动和停止 redis
  6. 《剑指offer》包含min函数的栈
  7. 你认为已经过时的C语言,是如何影响500万程序员的?...
  8. java PKCS7Padding 加密Cannot find any provider supporting AES/CBC/PKCS7Padding 解决办法
  9. ThinkPHP5中的助手函数
  10. vue 2.0 使用 Font Awesome
  11. vue - webpack.dev.conf.js for FriendlyErrorsPlugin
  12. 图扑软件数字孪生微电网,部署源网荷储一体化平台事半功倍
  13. 投影仪怎么安装小容量软件?5款小体积应用下载搞定内存不足
  14. 执行retn、call、leave指令的时候,esp和eip的变化情况
  15. The Preliminary Contest for ICPC Asia Shanghai 2019 Light bulbs
  16. [iPad]手势及分页
  17. excel单元格斜杠拆分上下打字
  18. (转)Ogre 天龙八部 GridInfo文件格式说明(正确版)
  19. 偷看了女友的日记,我泪流满面【转载】
  20. python十以内加减法_python生成PDF文件20以内加减法,给上小学的宝宝

热门文章

  1. 2-2-2Webpack打包
  2. Oracle ogg00446,OGG-00446 分析与解决
  3. 推荐5款好用的固定资产管理系统
  4. Java日志系统01 ---- JUL日志
  5. 【萧氏布局】:黄金、白银TD、纸白银、行情解析布局操作
  6. GM8220S 国产USB2.0集线器|PIN 创维GL850G|GL850G与GM8220S对比测试
  7. 关于二维数组作为参数传递给函数的问题
  8. GIF/PNG和JPG的区别
  9. 李飞飞团队新作登PNAS!AI 与人类互动才能提高智能水平!
  10. STM32输出可控数量与频率的脉冲