ffmpeg根据原始视频的帧率进行提取视频帧

直接上代码,自己编写的。。。有问题可以提

安装教程看这个:https://blog.csdn.net/m0_61497715/article/details/129817641

去官网下个最新的ffmpeg,解压到随便的目录,上级目录最好不要用中文;

然后去设置环境变量,加入ffmpeg的bin路径;

查看是否设置成功使用ffmpeg -version。

python 复制代码
import os
import subprocess
import re
import math


def get_video_frame_rate(video_path):
    command = ['ffmpeg', '-i', video_path]
    # 执行命令并获取输出
    output = subprocess.run(command, capture_output=True, text=True)
    # 从输出中提取帧率信息
    match = re.search(r"(\d+(\.\d+)?) fps", output.stderr)
    if match is None:
        return None
    frame_rate = float(match.group(1))
    return frame_rate


_video_path = 'src.mp4'  # 设置视频文件路径
ffmpeg_path = r"ffmpeg.exe"
frame_path = os.path.basename(_video_path).split('.')[0]  # 以视频名字创建文件夹
os.makedirs(frame_path, exist_ok=True)

_frame_rate = get_video_frame_rate(_video_path)  # 获取视频帧率
fps = math.ceil(_frame_rate)  # 也可以输入其它数字,5,10,20

if _frame_rate is not None:
    print("视频帧率:", _frame_rate)
    os.system(f"{ffmpeg_path} -i {_video_path} -vf fps={fps} {frame_path}/%06d.png")
    print(math.ceil(_frame_rate))
else:
    print("无法获取视频帧率")
相关推荐
ai产品老杨33 分钟前
打破品牌孤岛:基于 GB28181 与 ZLMediaKit 的多协议视频统一接入网关架构
架构·音视频
视***间43 分钟前
智采高清,视界无界——视程空间视频采集卡,定义专业采集新标杆
人工智能·机器人·音视频·边缘计算·采集卡·视程空间·视频采集卡
KevinCyao1 小时前
app视频短信接口如何集成?提升移动端APP用户促活的视频短信方案
音视频·视频短信
潜创微科技--高清音视频芯片方案开发1 小时前
2026年主流HUB芯片服务商选型评估能力分析
音视频·硬件工程
weixin199701080161 小时前
《好看视频商品详情页前端性能优化实战》
前端·性能优化·音视频
AI2512242 小时前
主流AI视频生成工具技术测评对比:生成质量与性能分析
人工智能·音视频
EasyGBS2 小时前
国标GB28181视频分析平台EasyGBS视频质量诊断核心能力与多场景应用实践
音视频
拉什福德Rashford2 小时前
一个人就是一支影视团队:实测国内最强影视级 AI 视频创作平台 TapNow——告别抽卡,导演级精准控制
人工智能·科技·ai作画·aigc·音视频·产品经理
EasyDSS2 小时前
私有化视频会议系统/视频高清直播点播EasyDSS企业级融媒体平台重塑智慧医疗协作新生态
音视频·媒体
AI服务老曹3 小时前
异构计算与边缘协同:基于 Spring Boot 的 AI 视频管理平台架构深度解析
人工智能·spring boot·音视频