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
相关推荐
practical_sharp12 分钟前
基于Pytorch的CIFAR100数据集上从ResNet50到VGG16的知识蒸馏实验记录
人工智能·pytorch·python
伊织code6 小时前
CSDN 博客自动发布脚本(Python 含自动登录、定时发布)
python·博客·登录·csdn·自动发布·定时
007php0077 小时前
GoZero对接GPT接口的设计与实现:问题分析与解决
java·开发语言·python·gpt·golang·github·企业微信
思忖小下7 小时前
Python基础学习-11函数参数
python·语法
封步宇AIGC9 小时前
量化交易系统开发-实时行情自动化交易-4.4.1.做市策略实现
人工智能·python·机器学习·数据挖掘
Uluoyu9 小时前
python多线程使用rabbitmq
python·rabbitmq·ruby
红米饭配南瓜汤9 小时前
Android显示系统(01)- 架构分析
android·音视频·媒体
余道各努力,千里自同风10 小时前
HTML5 视频 Vedio 标签详解
前端·音视频·html5
q0_0p11 小时前
从零开始的Python世界生活——基础篇(Python字典)
python·python基础
databook11 小时前
manim边做边学--圆柱体
python·动效