问题标签 [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 投票
2 回答
2601 浏览

ffmpeg - 如何使用 FFProbe 检测变形视频?

这是我使用 FFProbe 获得的输出,我确定是变形的视频。我已将其转换为使用 ffmpeg 进行的测试,结果与具有不同 PAR 和 DAR 的视频一致(视频被压扁)。我运行了一些命令行参数来修复变形视频并且它起作用了。可能我的诊断不正确,PAR 和 DAR 完全是错误的?

我用来“纠正”变形的代码是

是否有带有 FFProbe 的附加命令来检测变形?到目前为止,我只是看看 sample_aspect_ratio 和 display_aspect_ratio 是否相同。

此外,0:1 的比例似乎不正确。我的视频不是无限宽的。FFProbe 输出是否存在错误?

这是命令

2013 年 6 月 27 日构建的 FFProbe 版本 N-54233-g86190af 输出以下内容:

0 投票
1 回答
6819 浏览

video - ffmpeg 编辑元数据major_brand

您好,我有一个 MP4 视频,我想使用 ffmepg 更改 creation_time,而不更改其余的元数据。但我面临一些问题..

更改了major_brand 和更多内容。我希望那些是一样的。如果我把它放在 ffprobe.exe 这就是我看到的:

我想在运行时更改视频的创建时间:

ffmpeg.exe -i 6.mp4 -metadata creation_time="2013-06-22 15:00:00" -acodec copy -vcodec copy output.mp4

我得到:

根据输出,因为我选择了“-acodec copy -vcodec copy”,所以一切都应该保持不变。但是当我为新创建的 .mp4 文件运行 ffprobe 时。这是输出:

如你所见,一切都变了,尽管我选择保持一切不变。

请帮助我。谢谢!

0 投票
2 回答
4410 浏览

ffmpeg - ffprobe 的数据包大小单位是多少(类似于 ffmpeg)?

我正在开发带有 ff- 系列(表示 ffmpeg、ffplay、ffprobe)的缩略图提取器。

我需要知道帧的位置,所以我使用了一个类似下面的命令,我在 stackoverflow 中找到了另一个帖子。

实际上它工作得很好,并制作了一个包含大量数据包信息的文件。

输出文件如下。

有一个名为“pkt_size”的列,我假设它是数据包的大小。

它显示一些数字,但没有单位信息。

我想知道单位是“字节”还是“位”。

如果有人有这方面的一些信息,请告诉我。

谢谢。

0 投票
3 回答
10435 浏览

ffmpeg - 如何使用 avprobe / ffprobe 检测音频采样率?

我正在使用通过 Homebrew 安装的 libav 9.6。

即使采样率显示在命令行输出的标准输出中,该-show_format选项根本不会显示音频文件的采样率信息。

这是 BASH 终端输出:

和python代码示例:

所以我知道采样率可能是在-show_format选项结果中显示的特定于流的显示。但是没有任何其他选项可以检测特定音频流的采样率,即使可以-ar在重新编码时设置它。

我向 libav 提交了一张票,但我只是好奇是否有任何其他方法可以从 libav 探测工具中提取采样率。我很感激事先的回答。

PS:在这种情况下,对于ffmpeg(ffprobe)的上游项目将是相同的问题。

0 投票
1 回答
1288 浏览

java - FFmpeg 错误代码 254

我尝试通过 java 应用程序中的 ffprobe 获取文件信息。

我正在使用以下命令:

/usr/bin/ffprobe -v quiet -print_format json -show_format -show_streams TESTVIDEOPATH

在 bash 中运行该命令,它就像一个魅力:它返回 JSON 字符串,错误代码为“0”。在 Java 中运行该命令会导致错误代码“254”,结果是:

{\n}\n

当我修改命令时,ffprobe 接受一个流作为输入:

/usr/bin/ffprobe -v quiet -i - -print_format json -show_format -show_streams

它适用于 bash 和 Java。

在 Java 中使用以下内容:

谁能告诉我错误代码254是什么意思?我找不到任何关于它的信息。

编辑:使用 ffmpeg 版本 0.10.7-6:0.10.7-0jon1~quantal

0 投票
4 回答
20454 浏览

video - 如何使用 mediainfo 以秒或其他格式查找视频文件的持续时间?

如何以确定的方式以毫秒为单位找到视频文件的持续时间,即整数。我已经使用 ffprobe 来获取持续时间,但它并没有给出所有文件格式的持续时间。

0 投票
1 回答
2156 浏览

video - 重新创建/匹配 ffmpeg 设置

我有一个 MP4 文件,它可以在每个使用 HTML5 或 Flash 后备(使用 mediaelement.js)的浏览器上播放。我还有一系列额外的视频文件,我想“匹配”一个持续播放的文件,但我无法匹配 ffmpeg 设置,因此它会生成一个类似的文件。我使用 ffprobe 并在成功播放的文件上得到以下结果:

按照我在网上找到的一些指南,我正在使用以下 ffmpeg 设置:

该命令产生以下输出:

上述咒语的一个问题是,在 iPad 和 iPhone 以及一些 Android 平板电脑上,您听到的只是没有视频的音频。但是上面列出的文件(ffprobe 的内容)没有这个问题,它可以在 iPad、iPhone、Android 平板电脑上播放。我研究了“音频,没有视频”的原因,并且建议到处都是。但是,ffprobe 中列出的文件可以播放,所以如果我可以匹配 ffprobe 描述的所有其他视频的设置,它们也应该可以一致地播放。我的挑战是使用 ffmpeg 匹配 ffprobe 设置,我在 ffprobe 中看到的内容与 ffmpeg 中的相应设置之间似乎没有一对一的匹配(一个不错的实用程序是让 ffprobe 输出可以用于创建类似格式的文件)。

我浏览了 ffprobe 文档,但找不到任何可以生成可用作 ffmpeg 输入的格式的内容。建议?

0 投票
1 回答
3108 浏览

linux - 如何将 FFProbe 编译为独立应用程序?(Mac/Linux/赢)

我正在尝试将 FFMPEG(我实际上只是在寻找包含在 FFMPEG 工具中的 FFProbe)编译为 MacOS X、Linux 和可能的 Windows 的独立应用程序。对于独立,我的意思是将库(x264、OpenJPEG 等)“嵌入”到可执行文件中,因此我只需为 FFProbe 分发一个可执行文件 - 抱歉,我不知道正确的术语(请让我知道),在这方面我是新手。

我开始尝试在 MacOS X 下执行此操作,但没有任何运气,但也计划在 Linux 和 MacOS X 上执行此操作。

我确实看到了一些执行此操作的预编译二进制文件,并且不依赖于额外的库,但到目前为止我发现的版本要么不是当前版本(1.x),要么不包含在可执行文件中的库(永远相遇)。

我遵循了几个指南(例如:FFMpeg MacOSX 编译指南reneVolution),无论是否使用 Brew,但这些都没有告诉我如何将库嵌入到可执行文件中。我认为这是为链接设置的选项。

我不确定是否适合同时针对 Win、Mac 和 Linux 提出这个问题 - 如果不合适:我想从 Mac 版本开始。

我的系统运行 MacOS X 10.9、XCode 5.0.2,安装了命令行工具和 brew。我只是在寻找英特尔二进制文件,而不是通用或 PowerPC 二进制文件。

对于 Windows,我可以使用 Windows 8.1 或 XP,对于 Linux,我目前使用 Ubuntu 12,所有这些都是虚拟机。

0 投票
3 回答
3696 浏览

c - “return ret < 0”是什么意思?

函数可以返回一个数字、指针和大部分你想要的类型,但它的含义是什么?

(此代码片段来自代码的最后一行ffprobe.c。)

0 投票
4 回答
19430 浏览

video - 获取 MOV 视频的元数据

我有一个电话通讯应用程序发送的 .MOV 视频。我可以检索文件和作者的真实创建数据吗?我尝试使用 ffprobe、mediainfo 和类似工具,但只给我下载日期。