Python解析视频FPS(帧率)、分辨率信息

以下介绍使用Python解析视频的 FPS(帧率)和分辨率信息的方法:

Python 解析视频 FPS 和分辨率信息

在 Python 中,我们可以借助第三方库opencv-python(通常简称为cv2)来实现对视频相关信息的解析,示例代码如下:

python 复制代码
import cv2

def get_video_info(video_path):
    video = cv2.VideoCapture(video_path)
    if not video.isOpened():
        print("无法打开视频文件")
        return

    # 获取帧率(FPS)
    fps = video.get(cv2.CAP_PROP_FPS)
    # 获取视频宽度(分辨率的一部分)
    width = int(video.get(cv2.CAP_PROP_FRAME_WIDTH))
    # 获取视频高度(分辨率的一部分)
    height = int(video.get(cv2.CAP_PROP_FRAME_HEIGHT))

    print(f"视频帧率(FPS): {fps}")
    print(f"视频分辨率: {width}x{height}")

    video.release()


video_path = "your_video_file_path.mp4"  # 替换为实际的视频文件路径
get_video_info(video_path)

在上述代码中:

  1. 首先使用cv2.VideoCapture函数打开指定路径的视频文件,如果无法打开会给出相应提示并返回。
  2. 通过video.get(cv2.CAP_PROP_FPS)获取视频的帧率信息,这里CAP_PROP_FPSopencv-python库中用于指定获取帧率属性的常量。
  3. 利用video.get(cv2.CAP_PROP_FRAME_WIDTH)video.get(cv2.CAP_PROP_FRAME_HEIGHT)分别获取视频帧的宽度和高度,也就是视频的分辨率信息,并且将获取到的值转换为整数类型,最后打印输出相应的信息,完成后使用video.release()释放视频资源。

除了opencv-python库外,还可以使用moviepy库来获取视频信息,示例如下:

python 复制代码
from moviepy.editor import VideoFileClip

def get_video_info_moviepy(video_path):
    clip = VideoFileClip(video_path)
    fps = clip.fps
    width, height = clip.size
    print(f"视频帧率(FPS): {fps}")
    print(f"视频分辨率: {width}x{height}")
    clip.close()

video_path = "your_video_file_path.mp4"  # 替换为实际的视频文件路径
get_video_info_moviepy(video_path)

这里通过VideoFileClip类加载视频文件,然后直接通过clip.fps获取帧率,clip.size获取视频的宽度和高度组成的元组(即分辨率信息),最后别忘记调用clip.close()关闭资源。

相关推荐
乱写代码19 分钟前
Pydantic学习--BaseModel
python
fu159357456833 分钟前
【边缘计算实战】P1:从零搭建边云任务卸载仿真实验台(Python 可复现)
数据库·python·边缘计算
对讲机数码科普44 分钟前
哈尔滨对讲机无声、音量小、喇叭破音故障修复 香坊双工电子音频组件专项维保
音视频
蜡台1 小时前
通过Gradle脚本声明更改Java变量
android·java·开发语言·python·kotlin·gradle·groovy
智能体与具身智能2 小时前
TVA 本质内涵与核心特征(系列)
人工智能·python·智能体视觉
云雾J视界2 小时前
SST:高频变压器设计实战:铁氧体 vs 纳米晶 vs 非晶,磁性材料怎么选
python·acdc·dab·sst
第一程序员2 小时前
Rust trait 入门:把 AI 客户端抽象成可替换接口
python·rust·github
Ulyanov3 小时前
Python实现6-DOF刚体仿真器(下)——环境扰动与控制闭环
开发语言·python·算法·系统仿真·雷达电子对抗·导引头
小小的木头人3 小时前
Python 批量解析 Excel 经纬度,调用高德地图 API 获取中文地址
开发语言·python·excel
金銀銅鐵3 小时前
[Python] 为 Vole 机器语言实现图形化界面
python·程序员