问题标签 [ffprobe]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
8 回答
43239 浏览

video - 从ffmpeg获取视频尺寸/分辨率/宽度x高度

如何从ffmpeg的信息输出中获取视频的高度和宽度。例如,使用以下输出:

我怎么得到height = 640, width= 360

0 投票
7 回答
26672 浏览

python - 使用 Python 获取 FFProbe 信息

我一直试图永远解决这个问题(我是编程新手),但我无法弄清楚。

我正在尝试构建一个脚本来测试文件,并给我输出,我可以从中获取诸如“音频格式”之类的信息,然后我可以将这些信息放入文件名中。但是,我什至无法让脚本返回任何文件信息。我在插入输入文件时碰壁了......

所以在这一点上,我只需要帮助它根据我输入的 argv 吐出信息。希望我能够弄清楚如何从中解析音频信息。

我的尝试似乎很接近:

0 投票
1 回答
2801 浏览

python - 带有 print json 的 Ffprobe 不打印任何内容

我正在尝试以人类可读的方式获取有关电影的信息(分辨率、帧速率、比特率、编解码器、持续时间等)。我发现了这个命令:

在这个 Stack Overflow 问题中:Get ffmpeg information in friendly way

但这对我不起作用。当我在终端中尝试时,输出为空:

0 投票
3 回答
61881 浏览

python - Python 访问 JSON 对象中的数据

所以我在我的脚本中这样做:

哪个输出:

如何访问流或格式,然后访问其中的属性?例如如何从第二个流中获取 codec_long_name 或如何从格式中获取持续时间?

我试过:

哪个输出:

如果我打印 repr(info),我会得到:

我获取 JSON 字符串的方式是运行以下命令:

0 投票
2 回答
600 浏览

python - 如何模拟 .mpg 文件进行单元测试?

行。我有一个运行这个命令的类:

self.absolute_path 是电影的路径,比方说 .mpg 文件。

我用于测试的文件是 4GB 大,我不想在我的 GIT 存储库中提交它。

所以我正在考虑模拟这个文件并创建一个名为:

当作为 ffprobe 命令的输入提供时,它将返回与实际 mpg 电影相同的字符串。那可能吗?

或者我应该选择什么其他方法?

这是我的课:

这就是我将如何对其进行单元测试:

0 投票
3 回答
7415 浏览

python - 使用 ffprobe '-show_format_entry' 选项

几天来,我一直在寻找如何将“-show_format_entry”合并到我的 Python 脚本中,该脚本使用 ffprobe 从目录中的所有音频和视频文件中提取元数据。但是,我不希望格式返回的所有内容。

我当前的脚本:

输出类似于:

我想要的是能够使用通用 ffprobe 选项“-show_format_entry”并指定“-show_format_entry 文件名”、“-show_format_entry 持续时间”、“-show_format_entry 大小”以仅获取输出中的文件名、持续时间和大小.

我还在 cmnd 中的 'filename' 之后尝试了 grep|duration 以隔离输出中的这些值,但它不起作用。另外,如果可以的话,我想去掉输出中的 [FORMAT][/FORMAT] 标签,但这并不是完全必要的。非常感谢任何反馈。

0 投票
2 回答
2266 浏览

c# - 在带有图文字幕的文件上使用 ffprobe 时程序挂起

在包含图文电视字幕的 MKV 文件上运行 ffprobe 时出现问题。代码位于 C# 库中,适用于其他 MKV 文件。

运行最新:

代码:

文件名具有 UNC 路径 - 尝试使用 FileName 参数但出现错误,因此通过参数传递文件名。

如果我运行以下命令行:

ffprobe -show_format -show_streams "\\192.168.10.1\content\Breakfast At Tiffany 的示例 preview.mkv"

我得到以下输出(注意错误 - “不支持的编解码器带有 id ...”):

我的问题是,该过程似乎挂起。我去掉了“CreateNoWindow”选项,当然,我在屏幕上看到了一个大的空白窗口,通常只是在普通文件上闪烁。但是,对于图文电视字幕文件,它仍然存在。如果我手动关闭它,程序会继续,我似乎得到了我想要的输出。

所以我的问题是,我怎样才能进一步调试它,找出为什么会挂起以及如何处理错误(或简单地忽略它)并继续?

0 投票
1 回答
895 浏览

video - FFMpeg 生成静态视频

我正在对 ffmpeg 做一个简单的测试。我想将它用于我正在开发的网站的缩略图生成/视频抓取。我目前正在使用 VLC 来抓取单帧然后生成缩略图,但它相当慢而且有点麻烦。

问题是我正在使用的视频(来自我自己的电脑)是由安全摄像头软件生成的,它的视频格式很奇怪。当我在 VLC 中打开它(.bvr)时,它播放得非常非常快。一个 10 秒的视频大约需要 2.5 秒。此外,使用 ffmpeg "ffmpeg -i test.bvr output.avi" 进行简单转换会生成适当长度的视频(10 秒),但视频帧永远不会改变。(这是静止图像)

测试文件和测试输出文件:

我认为这主要是由于 IP 摄像机可能只产生 5-7 fps 但安全软件不知道更好并且将其写入好像应该是 24/30 fps。

FFMpeg 报告:[m4v @ 00000000002cec60] 从比特率估计持续时间,这可能是不准确的输入 #0,m4v,来自“test.bvr”:持续时间:N/A,开始:0.000000,比特率:N/A 流 #0:0 :视频:mpeg4(简单配置文件)、yuv420p、640x480 [SAR 1:1 DAR 4:3]、5 tbr、1200k tbn、5 tbc 输出 #0、avi 到“output.avi”:元数据:ISFT
:Lavf54。 25.104 Stream #0:0: Video: mpeg4 (FMP4 / 0x34504D46), yuv420p, 640x480 [SAR 1:1 DAR 4:3], q=2-31, 200 kb/s, 5 tbn, 5 tbc 流映射:

Stream #0:0 -> #0:0 (mpeg4 -> mpeg4) 按 [q] 停止,按 [?] 寻求帮助 frame= 50 fps=0.0 q=2.0 Lsize= 244kB time=00:00:10.00 bitrate= 199.7kbits/s 视频:237kB 音频:0kB 字幕:0 全局标题:0kB 复用开销 2.877066%**

任何帮助表示赞赏!

0 投票
0 回答
1180 浏览

ffmpeg - 使用 ffmpeg/ffprobe 计算破碎电影的实际持续时间

我有一个损坏的视频文件,它的 ffprobe (ffprobe -i movie.mkv) 说它的持续时间约为 2 小时,但该文件仅包含前 8 分钟的视频数据(由 VLC 播放器检查)。

如何使用 ffmpeg 或 ffprobe 获得实际持续时间(8 分钟)?

这是输出:

0 投票
3 回答
8537 浏览

ffmpeg - ffprobe - 从管道获取文件信息

我有一个 oog 文件(它是由 pbx Asterisk 记录的两个音频流中的 sox 混合的),我正在尝试使用 ffprobe 获取文件信息。当我使用类似的东西时

我得到无效的文件信息(持续时间:N/A、错误的比特率等)当我尝试时

一切正常,我得到文件信息。有什么问题?文件内容?