python 获取视频的时长

以下是几种获取视频时长的实现方法:

方法一:使用moviepy库

python 复制代码
from moviepy.editor import VideoFileClip
 
def get_video_duration(file_path):
    video = VideoFileClip(file_path)
    duration = video.duration
    video.close()
    return duration

方法二:使用cv2库

python 复制代码
import cv2
 
def get_video_duration(file_path):
    video = cv2.VideoCapture(file_path)
    frame_count = int(video.get(cv2.CAP_PROP_FRAME_COUNT))
    fps = video.get(cv2.CAP_PROP_FPS)
    duration = frame_count / fps
    video.release()
    return duration

方法三:使用ffprobe命令行工具

python 复制代码
import subprocess
 
def get_video_duration(file_path):
    result = subprocess.run(['ffprobe', '-v', 'error', '-show_entries', 'format=duration', '-of', 'default=noprint_wrappers=1:nokey=1', file_path], capture_output=True, text=True)
    duration = float(result.stdout)
    return duration
相关推荐
痛&快乐着10 小时前
Python 包管理工具 uv 命令大全(附核心注意事项)
python·uv
专心搞代码10 小时前
【大模型开发】python基础(二)
开发语言·python
Feibo201110 小时前
OpenClaw部署
python
努力学习的小廉10 小时前
Python基础——搭建 Python 环境
开发语言·python
清水白石00810 小时前
Python 编程全景解析:四大核心容器的性能较量、语义之美与高阶实战
开发语言·数据库·python
2401_8785302110 小时前
深入理解Python的if __name__ == ‘__main__‘
jvm·数据库·python
liuyao_xianhui10 小时前
优选算法_栈_删除字符中的所有相邻重复项_C++
开发语言·数据结构·c++·python·算法·leetcode·链表
STLearner10 小时前
AI论文速读 | 元认知监控赋能深度搜索:认知神经科学启发的分层优化框架
大数据·论文阅读·人工智能·python·深度学习·学习·机器学习
林姜泽樾11 小时前
python入门第四课,运算符、转义字符和文本
python·pycharm
PieroPc11 小时前
用tkinter 做一个通过 扫描仪硬件 扫描纸质文档的软件 支持pdf
python·pdf·扫描