使用Python获取视频时长 – OpenCV
先决条件:
- OpenCV 模块
- 日期时间模块
OpenCV 是最受欢迎的跨平台库之一,广泛用于深度学习、图像处理、视频捕捉等。在本文中,我们将学习如何使用Python和计算机视觉获取给定视频的持续时间。
安装
可以通过在终端上运行给定的命令来下载 Opencv:
pip install Opencv
方法
要获取视频的持续时间,必须遵循以下步骤:
- 导入所需的模块。
- 通过向 VideoCapture() 方法提供视频 URL 来创建 VideoCapture 对象。
句法:
VideoCapture("url")
- 通过向 get() 方法提供 cv2.CAP_PROP_FRAME_COUNT 和 cv2.CAP_PROP_FPS 来计算给定视频的总帧数和每秒帧数。
- 通过除以帧和 fps 来计算视频的持续时间(以秒为单位)。
- 此外,使用 timedelta() 方法计算视频时间。
句法:
timedelta(time)
下面是实现。
Python3
# import module
import cv2
import datetime
# create video capture object
data = cv2.VideoCapture('C:/Users/Asus/Documents/videoDuration.mp4')
# count the number of frames
frames = data.get(cv2.CAP_PROP_FRAME_COUNT)
fps = int(data.get(cv2.CAP_PROP_FPS))
# calculate dusration of the video
seconds = int(frames / fps)
video_time = str(datetime.timedelta(seconds=seconds))
print("duration in seconds:", seconds)
print("video time:", video_time)
输出 :
duration in seconds: 32
video time: 0:00:28