当前位置: 首页 > news >正文

ffprobe安装与简单使用

ffprobe 是 FFmpeg 多媒体框架中的一个强大工具,主要用于分析和获取多媒体文件(如视频、音频)的详细信息。

第一部分:安装 ffprobe

ffprobe 通常作为 FFmpeg 套件的一部分被捆绑安装。因此,安装 ffprobe 本质上就是安装 FFmpeg。

Linux 系统安装

Ubuntu / Debian

使用 apt 包管理器:

sudo apt install ffmpeg

安装完成后,在终端输入 ffprobe -version 来验证安装。


第二部分:使用 ffprobe

ffprobe 的基本命令格式为:

ffprobe [options] input_file
常用选项和示例

1. 显示媒体文件的基本信息(最常用)
这是默认行为,会输出容器格式、流信息(视频、音频、字幕等)、时长、码率等。

ffprobe input.mp4

2. 以 JSON 格式输出详细信息,便于脚本解析
-print_format json-of json 指定输出格式为 JSON。
-show_format 显示容器格式信息。
-show_streams 显示所有流的信息。

# 输出非常详细的所有信息(格式+流)
ffprobe -v quiet -print_format json -show_format -show_streams input.mp4# 只获取容器格式信息
ffprobe -v quiet -print_format json -show_format input.mp4# 只获取视频流的信息(结合 grep 等工具)
ffprobe -show_streams input.mp4 | grep codec_name
  • -v quiet 用于 suppress 不必要的输出,让结果更干净。

3. 显示数据包(packet)信息

ffprobe -show_packets input.mp4

4. 显示帧(frame)信息

ffprobe -show_frames input.mp4

5. 选择特定的流
使用 -select_streams 选项可以指定要分析的流类型。

  • v:0:第一个视频流
  • a:0:第一个音频流
  • s:0:第一个字幕流
# 只显示第一个视频流的信息
ffprobe -show_streams -select_streams v:0 input.mp4# 只显示所有音频流的信息
ffprobe -show_streams -select_streams a input.mp4

6. 获取特定值(用于脚本)
结合 -show_entries-of default=noprint_wrappers=1:nokey=1 可以只输出想要的具体值,非常适合在 Shell 脚本中使用。

# 获取视频时长(秒)
ffprobe -v error -show_entries format=duration -of default=noprint_wrappers=1:nokey=1 input.mp4# 获取视频编码格式
ffprobe -v error -select_streams v:0 -show_entries stream=codec_name -of default=noprint_wrappers=1:nokey=1 input.mp4# 获取视频分辨率(宽高)
ffprobe -v error -select_streams v:0 -show_entries stream=width,height -of csv=s=x:p=0 input.mp4
# 输出示例:1920x1080# 获取音频采样率
ffprobe -v error -select_streams a:0 -show_entries stream=sample_rate -of default=noprint_wrappers=1:nokey=1 input.mp4# 获取总比特率(码率)
ffprobe -v error -show_entries format=bit_rate -of default=noprint_wrappers=1:nokey=1 input.mp4
  • -v error 只显示错误信息,让输出只有想要的数据。

7. 输出简洁的格式和流信息

ffprobe -show_format -show_streams input.mp4

总结

命令示例用途
ffprobe input.mp4快速查看文件基本信息
ffprobe -print_format json -show_format -show_streams input.mp4获取文件的完整详细信息(JSON)
ffprobe -v error -show_entries stream=width,height -of csv=s=x:p=0 input.mp4脚本常用:获取视频分辨率
ffprobe -v error -show_entries format=duration -of default=noprint_wrappers=1:nokey=1 input.mp4脚本常用:获取视频时长
ffprobe -show_streams -select_streams v:0 input.mp4只查看第一个视频流的详细信息

ffprobe 的功能非常强大,以上只是最常用的一些命令。可以通过 ffprobe -h full 查看所有可用的选项和帮助信息。对于媒体文件分析和自动化处理来说,它是一个不可或缺的工具。

http://www.dtcms.com/a/394962.html

相关文章:

  • close函数就像“关门“操作,用于关闭文件描述符释放系统资源
  • PyTorch 神经网络工具箱学习笔记
  • Qt常用控件之QWidget(三)
  • apache poi excel 单元格换行
  • 全能视频下载器-下载自媒体平台视频 v1.5.5 专业版
  • 状态模式指南:对象状态变化的优雅管理
  • 自动化多段视频删除:FFmpeg.AutoGen 与 C# 的完整实现​
  • C、C++、Java 和 Python:四大编程语言的对比分析
  • ESP iic驱动
  • Ai-Agent学习历程——大模型的概念
  • 5G NR-NTN协议学习系列:NR-NTN介绍(3)
  • 一场 MCP 生态的变革——详解 OpenTiny NEXT 逆向思维的技术创新
  • 【案例教程】从CNN到 Transformer:基于PyTorch的遥感影像、无人机影像的地物分类、目标检测、语义分割和点云分类
  • 私有证书不被edge浏览器认可的问题的解决-Debian13环境下
  • 团体程序设计天梯赛 L2-052 吉利矩阵 (DFS+剪枝)(Java实现)
  • 【LeetCode 每日一题】966. 元音拼写检查器
  • windows 服务器如何开启系统自带的ftp服务
  • 2025年面试经历
  • Linux 基础:目录结构
  • OpenLayers地图交互 -- 章节七:指针交互详解
  • Kafka实战案例一:阿里云Kafka智能设备数据实时处理系统
  • 回调函数与错误处理
  • 深入大模型-2-大模型微调之Windows10安装大语言模型Unsloth微调环境
  • openssl x509 -noout -text -in server.cert.pem输出字段详解
  • Linux 基础:Vi/Vim 编辑器
  • K8s和Service Mesh如何强化微服务治理能力
  • 知识图谱赋能自然语言处理的深层语义分析:技术、影响与前沿趋势
  • 论文笔记:How Can Recommender Systems Benefit from Large Language Models: A Survey
  • idea终端添加git-bash,支持linux的shell语法
  • MITRE ATLAS对抗威胁矩阵:守护LLM安全的中国实践指南