1.查看帧信息
XML、INI、JSON、CSV、FLAT
ffprobe -show_frames -of xml/json input.mp4
ffprobe -show_frames -select_streams v -of xml 1209.mp4 >videoframes.info
ffprobe -show_frames -select_streams v -of xml 001.mp4 |awk -F ’ ’ ‘{print $4,$5,$6,$7,$8,$14,$15,$19}’
key_frame:是否是关键帧
pkt_pts:帧的pts数值
pkt_pts_time:通过time_base计算出来的显示时间
pkt_dts:帧的dts数值
pkt_dts_time:通过time_base计算出来的dts时间
pict_type:帧类型(I、B、P)
查看封包
ffprobe -show_packets -of json 001.mp4
ffprobe -show_packets -select_streams v -of json 001.mp4
codec_type: 多媒体类型,例如视频包,音频包等;
stream_index: 多媒体的stream索引;
pts: 多媒体的显示时间值
pts_time: 根据不同格式计算过后的多媒体的显示时间
dts: 多媒体解码时间值
dts_time: 根据不同格式计算过后的多媒体解码时间
duration: 多媒体包占用的时间值
duration_time: 根据不同格式计算过后的多媒体包占用的时间值
size: 多媒体包的大小
pos: 多媒体包所在的文件偏移位置
flags: 多媒体包标记,关键包与非关键包的标记
查看封装格式
ffprobe -show_format 001.mp4
查看流信息
ffprobe -show_streams 001.mp4
查看包内数据
ffprobe -show_data -show_packets 001.mp4
ffmpeg -i a.mov -i b.mov -c copy -map 0:2 -map 1:6 out.mov
从文件a.mov中选择序号为2的流(流标签0:2),以及从b.mov中选择序号为6的流(流标签1:6),然后共同复制输出到out.mov