首页 > python教程

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

时间:2020-07-17 python教程 查看: 1056

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

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 将视频 通过视频帧转换成时间实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持python博客。

展开全文
上一篇:python实现四人制扑克牌游戏
下一篇:python+adb+monkey实现Rom稳定性测试详解
输入字:
相关知识
Python 实现图片色彩转换案例

我们在看动漫、影视作品中,当人物在回忆过程中,体现出来的画面一般都是黑白或者褐色的。本文将提供将图片色彩转为黑白或者褐色风格的案例详解,感兴趣的小伙伴可以了解一下。

python初学定义函数

这篇文章主要为大家介绍了python的定义函数,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助,希望能够给你带来帮助

图文详解Python如何导入自己编写的py文件

有时候自己写了一个py文件,想要把它导入到另一个py文件里面,所以下面这篇文章主要给大家介绍了关于Python如何导入自己编写的py文件的相关资料,需要的朋友可以参考下

python二分法查找实例代码

二分算法是一种效率比较高的查找算法,其输入的是一个有序的元素列表,如果查找元素包含在列表中,二分查找返回其位置,否则返回NONE,下面这篇文章主要给大家介绍了关于python二分法查找的相关资料,需要的朋友可以参考下