06|如何使用 ffprobe 分析音视频参数与内容?
音视频容器格式分析
- 深入了解
- 翻译
- 解释
- 总结
使用ffprobe工具分析音视频文件是一项重要的技术,本文详细介绍了如何利用ffprobe工具来获取音视频容器格式的信息、音视频流的信息以及音视频包的信息。通过不同的参数,读者可以深入了解音视频文件的各个维度信息,包括帧类型、时间戳、位置和大小等。文章还提到了如何精准地获得自己需要的字段,以及音视频封装容器、音视频流、音视频包、音视频帧之间的对应关系。通过实际示例和命令展示了ffprobe工具的强大功能,对于音视频领域的技术人员具有重要的参考价值。总的来说,本文为读者提供了深入了解音视频文件分析的实用技术指导,帮助他们更好地进行音视频处理和故障分析。文章还提出了思考题,引发读者思考如何利用所学知识进行分片转码,为读者提供了进一步思考和探索的空间。
《快手 · 音视频技术入门课》,新⼈⾸单¥59
全部留言(9)
- 最新
- 精选
- peter请教老师姐问题: Q1:像素不是一个点吗?怎么会是矩形? 文中有这样一句话:“肯定有一个因素,就是像素点不是矩形的,不是 1 比 1 的单个像素点。这就产生了 Pixel Aspect Ratio(PAR)像素宽高比”。我以前一直认为像素就是一个点,难道实际上像素是按矩形处理的吗? Q2:文中最后一个图,关于H.264的,视频文件中是同时存在Video Packet和Video Frame吗?或者说,Video Packet和Video Frame只存在一种,图中两个都列出来只是为了说明? Q3:YUV格式能用来实际显示吗? 我的理解是:YUV不能用来显示,需要转换为RGB才能显示。 Q4:01讲中,YUV420的图中,Y4个字节,U和V各一个字节。总共6个字节。这六个字节表示几个像素?我认为是表示4个像素,不是6个像素。 Q5:YUV420格式,V是0,为什么还会有一个字节?按道理是0个字节啊。
作者回复: 1 显示设备不同看到的不同,有的是矩形 有的是方块 只是我们现在见到的大多数是方块了,在一些超大屏幕上看到的还是有矩形的点的 2 正常情况下1个video packet对应一个video frame 该图只要是为了对应理解 3 有些设备输出是yuv,ycbcr这种规格,比如电视机现在应该还保留着这种规格的 还有小霸王游戏机的输出 4 yuv420 是2行2列四个像素点用4个y 一个uv 5 4:2:0并不意味着只有Y,Cb而没有Cr分量。它指得是对每行扫描线来说,只有一种色度分量以2:1的抽样率存储。相邻的扫描行存储不同的色度分量,也就是说,如果一行是4:2:0的话,下一行就是4:0:2,再下一行是4:2:0以此类推。对每个色度分量来说,水平方向和竖直方向的抽样率都是2:1,所以可以说色度的抽样率是4:1。对非压缩的8比特量化的来说,每个由2x2个2行2列相邻的像素组成的宏像素需要占用6字节内存。 下面八个像素为:[Y0 U0 V0] [Y1 U1 V1] [Y2 U2 V2] [Y3 U3 V3] [Y5 U5 V5] [Y6 U6 V6] [Y7U7 V7] [Y8 U8 V8] 存放的码流为:Y0 U0 Y1 Y2 U2 Y3 Y5 V5 Y6 Y7 V7 Y8 映射出的像素点为:[Y0 U0 V5] [Y1 U0 V5] [Y2 U2 V7] [Y3 U2 V7] [Y5 U0 V5] [Y6 U0 V5] [Y7U2 V7] [Y8 U2 V7]
2022-08-06归属地:上海5 - Geek_c9cd4cPPS 、SPS、VPS、SEI能介绍一下吗
作者回复: VPS应该是HEVC开始引入的,而且并不一定会出现在stream里面,SPS是编码的序列参数集,用来记录编码规则的参数为主。PPS是图像编码参数,用来记录图像属性相关参数为主,SPS和PPS更常见一些,这两个切换后还需要IDR做一下刷新操作。SEI记录一些额外的信息,例如编码器自定义一些信息,或者用户在编码时候加一些私人定制的参数信息,具体的可以参考编码参考标准,里面描述比我们短短的回复详细很多
2023-02-27归属地:上海1 - askxionghuffprobe 的 -show_formats改为-show_format
作者回复: 👍
2022-08-05归属地:上海1 - Geek_c9cd4cI帧不是keyframe吗
作者回复: 不一定,在OpenGOP编码情境下I不是IDR,也可以理解I不是keyframe
2023-02-27归属地:上海 - Geek_e2e4e9“因为分辨率是 1920x800 的,所以我们可以简单地称之为 1080p”这句话有问题,1080p应该是1920x1080的分辨率
作者回复: 没问题,这种接近的你跟人家菜鸟说1920x800人家听着比较直接,但是你说是1080p 人家也能理解是高清的意思,请认真看内容哦
2022-08-20归属地:北京 - jcy这个得分通常用来确定使用哪个容器模块来解析这个 probe 文件 这里 这个 probe 文件 是不是应该是 这个 mov 文件?
作者回复: 是的
2022-08-12归属地:北京 - 西格玛老师你好,经过做实验我发现和您的描述有点出入: ffprobe -show_frames -of xml xxx.mp4这个结果里面的pkt_pts和pkt_pts_time是不按照顺序的,但是 ffprobe -show_packets -of xml xxx.mp4的pts是按照顺序的
作者回复: 加上select_streams v 只看视频流 如果音视频交错的话不一定能顺序
2022-08-08归属地:北京 - ifelse学习打卡2023-12-24归属地:浙江
- 晓龙分片转码主要是根据video流特性进行分片转码,分片以gop作为划分点2022-09-20归属地:上海