当前位置:  首页  >  PHP资讯  >  业界资讯

python将视频通过视频帧转换成时间实例

这篇文章主要介绍了python将视频通过视频帧转换成时间实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

我就废话不多说了,还是直接看代码吧!

 def frames_to_timecode(framerate,frames): """ 视频 通过视频帧转换成时间 :param framerate: 视频帧率 :param frames: 当前视频帧数 :return:时间(00:00:01:01) """ return '{0:02d}:{1:02d}:{2:02d}:{3:02d}'.format(int(frames / (3600 * framerate)), int(frames / (60 * framerate) % 60), int(frames / framerate % 60), int(frames % framerate)) print(frames_to_timecode(25,123)) 

00:00:04:23

补充知识:python+opencv截取指定帧的视频段,同时转换分辨率

在网上看了好久一直没解决问题,好多都是复制粘贴别人的东西,耽误时间,小编在多次尝试和修改后终于成功了,废话不多说,直接上代码:

 import cv2 videoCapture = cv2.VideoCapture('K:/test/00000.mov') fps = 30 # 保存视频的帧率 size = (350, 256) # 保存视频的大小 videoWriter = cv2.VideoWriter('K:/test/0000_test.avi', cv2.VideoWriter_fourcc('X', 'V', 'I', 'D'), fps, size) i = 0 while True: success, frame = videoCapture.read() if success: i += 1 print('i = ', i) if (i >= 1000 and i <= 2000): frame=cv2.resize(frame,(350,256)) videoWriter.write(frame) if(i>2000): break else: print('end') break

其中原视频格式应该转换成 .mov(小编只在这种情况获得成功,其他可以自行测试),如果需要调整分辨率的话,必须有:

frame=cv2.resize(frame,(350,256))

这一过程,否则视频帧将无法写入,视频输出大小为0。

有不足的地方希望指出,希望能帮到你!

以上这篇python 将视频 通过视频帧转换成时间实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

内容推荐:免费高清PNG素材下载
吐了个 "CAO" !
扫码关注 PHP1 官方微信号
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved PHP1.CN 第一PHP社区 版权所有 京ICP备19059560号-4