音视频入门基础:FLV专题(25)——通过FFprobe显示FLV文件每个packet的信息

=================================================================

音视频入门基础:FLV专题系列文章:

音视频入门基础:FLV专题(1)------FLV官方文档下载

音视频入门基础:FLV专题(2)------使用FFmpeg命令生成flv文件

音视频入门基础:FLV专题(3)------FLV header简介

音视频入门基础:FLV专题(4)------使用flvAnalyser工具分析FLV文件

音视频入门基础:FLV专题(5)------FFmpeg源码中,判断某文件是否为FLV文件的实现

音视频入门基础:FLV专题(6)------FFmpeg源码中,解码FLV header的实现

音视频入门基础:FLV专题(7)------Tag header简介

音视频入门基础:FLV专题(8)------FFmpeg源码中,解码Tag header的实现

音视频入门基础:FLV专题(9)------Script Tag简介

音视频入门基础:FLV专题(10)------Script Tag实例分析

音视频入门基础:FLV专题(11)------FFmpeg源码中,解析SCRIPTDATASTRING类型的ScriptDataValue的实现

音视频入门基础:FLV专题(12)------FFmpeg源码中,解析DOUBLE类型的ScriptDataValue的实现

音视频入门基础:FLV专题(13)------FFmpeg源码中,解析任意Type值的SCRIPTDATAVALUE类型的实现

音视频入门基础:FLV专题(14)------FFmpeg源码中,解码Script Tag的实现

音视频入门基础:FLV专题(15)------Video Tag简介

音视频入门基础:FLV专题(16)------FFmpeg源码中,解码Video Tag的VideoTagHeader的实现

音视频入门基础:FLV专题(17)------FFmpeg源码中,提取Video Tag的VIDEODATA的实现

音视频入门基础:FLV专题(18)------Audio Tag简介

音视频入门基础:FLV专题(19)------FFmpeg源码中,解码Audio Tag的AudioTagHeader,并提取AUDIODATA的实现

音视频入门基础:FLV专题(20)------FFmpeg源码中,获取FLV文件major_brand、minor_version、compatible_brands、encoder、Duration的实现

音视频入门基础:FLV专题(21)------FFmpeg源码中,获取FLV文件音频信息的实现(上)

音视频入门基础:FLV专题(22)------FFmpeg源码中,获取FLV文件音频信息的实现(中)

音视频入门基础:FLV专题(23)------FFmpeg源码中,获取FLV文件音频信息的实现(下)

音视频入门基础:FLV专题(24)------FFmpeg源码中,获取FLV文件视频信息的实现

音视频入门基础:FLV专题(25)------通过FFprobe显示FLV文件每个packet的信息

=================================================================

通过FFprobe命令:

cpp 复制代码
ffprobe -of json -show_packets XXX.flv

可以显示FLV文件每个packet(也称为数据包或多媒体包)的信息:

其中:

codec_type:该数据包对应的这路流是视频还是音频。

stream_index:该数据包对应的这路流的流索引,即这路流是FLV文件中的第几路音视频流。

dts:该数据包的以AVStream的time_base为单位的解码时间戳,来源于该Tag的Tag header中的Timestamp和TimestampExtended属性。具体可以参考:《音视频入门基础:FLV专题(7)------Tag header简介》。

dts_time:该数据包的以秒为单位的解码时间戳。

pts:该数据包的以AVStream的time_base为单位的显示时间戳。对于音频,显示时间戳等于解码时间戳。对于视频,其数据包对应的Video Tag中存在一个CompositionTime属性表示Composition time offset(简称CTS),即PTS相对于DTS的偏移值。所以对于视频,显示时间戳(PTS) = DTS + CTS。具体可以参考:《音视频入门基础:FLV专题(15)------Video Tag简介》。

pts_time:该数据包的以秒为单位的显示时间戳。

duration:即AVPacket结构体中的成员变量duration,为该packet占用的以AVStream的time_base为单位的时间值。

duration_time:该packet占用的以秒为单位的时间值。

size:即AVPacket结构体中的成员变量size,为AVPacket的成员变量data指向的缓冲区的大小,也就是该packet的大小(以字节为单位)。该值是以Tag header的DataSize属性为基础,计算出来的。

相关文章:《音视频入门基础:H.264专题(22)------通过FFprobe显示H.264裸流每个packet的信息

相关推荐
ACP广源盛139246256731 天前
GSV2221 显示转换芯片@ACP#赋能 RTX Spark 端侧 AI 设备,构建多屏全模态视觉交互新生态
大数据·人工智能·嵌入式硬件·gpt·spark·电脑·音视频
jinxindeep1 天前
JoyAI-Echo:让五分钟叙事视频拥有可延续的角色记忆
音视频
街灯L1 天前
【Ubuntu】使用ffmpeg解析m3u8网页视频
ubuntu·ffmpeg·音视频
VidDown1 天前
VidDown 使用介绍:一个免费、本地化的在线工具集
javascript·编辑器·音视频·视频编解码·视频
VidDown1 天前
VidDown 视频解析下载:免安装、无水印、免费使用
音视频
byte轻骑兵1 天前
【LE Audio】CAP精讲[15]: 音频城堡的安保体系,全流程安全防护与权限管控
音视频·实时音视频·le audio·蓝牙音频·低功耗音频
huangdong_1 天前
拼多多商品图片视频批量采集:整店自动分类与高清原图
前端·javascript·音视频
Szime1 天前
深智微科技本周客户常询型号榜:华润微音频功放、存储器件、BMS与车规接口方向
科技·音视频
FFZero11 天前
[mpv脚本系统] (四) 脚本加载与事件循环系统
c语言·音视频·lua·多媒体
SPC的存折1 天前
MySQL完整学习手册(视频精华版)
学习·mysql·音视频