问题标签 [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.
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 输出以下内容:
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 时。这是输出:
如你所见,一切都变了,尽管我选择保持一切不变。
请帮助我。谢谢!
ffmpeg - ffprobe 的数据包大小单位是多少(类似于 ffmpeg)?
我正在开发带有 ff- 系列(表示 ffmpeg、ffplay、ffprobe)的缩略图提取器。
我需要知道帧的位置,所以我使用了一个类似下面的命令,我在 stackoverflow 中找到了另一个帖子。
实际上它工作得很好,并制作了一个包含大量数据包信息的文件。
输出文件如下。
有一个名为“pkt_size”的列,我假设它是数据包的大小。
它显示一些数字,但没有单位信息。
我想知道单位是“字节”还是“位”。
如果有人有这方面的一些信息,请告诉我。
谢谢。
ffmpeg - 如何使用 avprobe / ffprobe 检测音频采样率?
我正在使用通过 Homebrew 安装的 libav 9.6。
即使采样率显示在命令行输出的标准输出中,该-show_format
选项根本不会显示音频文件的采样率信息。
这是 BASH 终端输出:
和python代码示例:
所以我知道采样率可能是在-show_format
选项结果中显示的特定于流的显示。但是没有任何其他选项可以检测特定音频流的采样率,即使可以-ar
在重新编码时设置它。
我向 libav 提交了一张票,但我只是好奇是否有任何其他方法可以从 libav 探测工具中提取采样率。我很感激事先的回答。
PS:在这种情况下,对于ffmpeg(ffprobe)的上游项目将是相同的问题。
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
video - 如何使用 mediainfo 以秒或其他格式查找视频文件的持续时间?
如何以确定的方式以毫秒为单位找到视频文件的持续时间,即整数。我已经使用 ffprobe 来获取持续时间,但它并没有给出所有文件格式的持续时间。
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 输入的格式的内容。建议?
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,所有这些都是虚拟机。
c - “return ret < 0”是什么意思?
函数可以返回一个数字、指针和大部分你想要的类型,但它的含义是什么?
(此代码片段来自代码的最后一行ffprobe.c。)
video - 获取 MOV 视频的元数据
我有一个电话通讯应用程序发送的 .MOV 视频。我可以检索文件和作者的真实创建数据吗?我尝试使用 ffprobe、mediainfo 和类似工具,但只给我下载日期。