可能有些晚了,但或许对某些人仍然有用。
ffprobe
确实是一个很好的选择。不过需要注意的是,你需要告诉 ffprobe
你想要它显示哪些信息(使用 -show_format
、-show_packets
和 -show_streams
参数),否则它会输出空白(就像你在评论中提到的那样)。
例如,ffprobe -v quiet -print_format json -show_format -show_streams somefile.asf
将会产生类似以下的输出:
{
"streams": [{
"index": 0,
"codec_name": "wmv3",
"codec_long_name": "Windows Media Video 9",
"codec_type": "video",
"codec_time_base": "1/1000",
"codec_tag_string": "WMV3",
"codec_tag": "0x33564d57",
"width": 320,
"height": 240,
"has_b_frames": 0,
"pix_fmt": "yuv420p",
"level": -99,
"r_frame_rate": "30000/1001",
"avg_frame_rate": "0/0",
"time_base": "1/1000",
"start_time": "0.000",
"duration": "300.066",
"tags": {
"language": "eng"
}
}],
"format": {
"filename": "somefile.asf",
"nb_streams": 1,
"format_name": "asf",
"format_long_name": "ASF format",
"start_time": "0.000",
"duration": "300.066",
"tags": {
"WMFSDKVersion": "10.00.00.3646",
"WMFSDKNeeded": "0.0.0.0000",
"IsVBR": "0"
}
}
}