ffprobe 的使用介绍

ffprobe 的使用介绍

本文主要介绍了ffprobe 基本信息查询,及码流信息探测两种使用方法. 并给出了实例.

****************************************
 甲. 基本信息查询, 可以不需要输入文件.
****************************************
 ffprobe -h
 ffrobe 版本为4.4, 一下子就1996 行输出。 太大了, 可以归结为几类.
 Main option:                主要选项
 AVFormatContext option:      选项以及子项
 AVCodecContext option:       选项以及子项

------------------------------------------------------------
 1. 主选项:
------------------------------------------------------------
 68个,还是分为三类,基础信息, format 相关, codec 相关.

 关于显示版本号有几个选项,如下: 一般不常用,-hide_banner 倒可以用用.
 输出格式可以指定, 可以试试xml,json等,例如: -of xml, 不指定为default
 -show_program_version
 -show_library_versions
 -show_versions
 -hide_banner            //关闭默认的版本显示

 -pix_fmts                //显示支持的像素格式
 -show_pixel_formats    //详细显示像素格式
 -colors                //显示颜色名称和16进制数据对应关系
 -sample_fmts            //显示支持的音频采样格式
 -layouts                //显示支持的声道布局

 -formats                //显示支持的封装格式
 -muxers                // 可以细分为解复用,复用及设备
 -demuxers
 -devices

 -codecs                //显示支持的编解码格式
 -encoders                //可细分为编码,解码
 -decoders

 -filters                //显示支持的过滤器

------------------------------------------------------------
 2 AVFormatContext 选项相关
------------------------------------------------------------
这些选项也只是显示了解码的选项, 这些选项先忽略.
我们只是为了显示一些信息.


*********************************************
乙. 码流信息探测, 需要跟码流参数(例如文件名)
*********************************************

a. 如何使用ffprobe显示关于容器,流、包、帧的元数据信息?

1. 获取容器格式信息:-show_format
2. 获取每个流的信息:-show_streams
3. 获取每个数据包的信息:-show_packets
4. 获取帧的信息:-show_frames
还有其它一些show 选项,可用ffprobe -h |grep show 过滤查看
输出格式可以选择: default,xml,json,flag,csv,ini 各有各的用途,为了输出多样化.由-of 指定
使用方法很简单, 例如:
$ ffprobe -show_format test1.ts -of xml

b. 进一步提取其中部分信息. -show_entries(显示条目关键字)

提取流,包,帧的信息
提取信息可以用 -show_entries 后跟参数stream, packet,format等, 也可以跟frame,由于要解包,会比较慢.
进一步限定为继续加=参数限定. (key=value 方式)
例如:
流中的bit_rate, 像素格式等
ffprobe -v error  -hide_banner -show_entries stream=bit_rate -of default=noprint_wrappers=1 test1.ts
包中的pts 等
ffprobe -v error  -hide_banner -select_streams v -show_entries packet=pts_time -of ini test1.ts

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值