gpt4 book ai didi

json - 以友好的方式获取ffmpeg信息

转载 作者:IT老高 更新时间:2023-10-28 12:42:18 25 4
gpt4 key购买 nike

每次我尝试使用 ffmpeg 获取有关我的视频文件的一些信息时,都会吐出很多无用的信息和好东西。

我正在使用 ffmpeg -i name_of_the_video.mpg

有没有可能以友好的方式得到它?我的意思是 JSON 会很棒(甚至丑陋的 XML 也可以)。

到目前为止,我让我的应用程序使用正则表达式解析数据,但在某些特定的视频文件上出现了很多令人讨厌的角落。我修复了我遇到的所有问题,但可能还有更多。

我想要类似的东西:

{
"Stream 0": {
"type": "Video",
"codec": "h264",
"resolution": "720x480"
},
"Stream 1": {
"type": "Audio",
"bitrate": "128 kbps",
"channels": 2
}
}

最佳答案

有点晚了,但也许仍然与某人有关..

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"
}
}
}

关于json - 以友好的方式获取ffmpeg信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7708373/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com