问题标签 [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 回答
147 浏览

xml - 使用“value-of-select”选择第二个属性

编辑以包含其他信息。

我正在使用 Telestream Vantage 将 XML 转换为 Telestream 所称的元数据标签。

简单的方法如下:

  1. 在 Vantage 管理控制台中构建您的元数据标签集
  2. 将元数据标签集导出为 XML
  3. 从 XML 创建一个 XSL,它将从提供的 XML 中“剥离”值并填充标签集的字段。

我有一个由 FFProbe 生成的 xml,如下所示:

我正在尝试使用以下语句从每一行中提取“通道”属性:

如您所见,我正在查看的是“选择的价值”部分。对于每个后续块,我增加“流”参考:

然后我运行一个 Vantage 工作流,它将一个 XML 文件作为附件输入,然后使用样式表和目标元数据标签集应用“转换”。

在我查看元数据标签集的地方,我的所有值都是 0,而不是根据导入的 XML 文件的 1。我的 XSL 技能非常缺乏,但任何帮助将不胜感激。

0 投票
0 回答
101 浏览

mysql - 尝试将视频文件数据填充到 mysql 数据库

我正在尝试在 Mac 上循环浏览目录中的所有视频,并将文件的详细信息(持续时间、大小和时间)添加到 mysql 数据库中。但由于某种原因,每次它在 mysql 部分失败。

如果我采用脚本生成的 mysql 查询并在 mysql db 上运行它,它工作正常。任何人都可以提供帮助吗?

它们省略了敏感数据并且是正确的*(它们在另一个 shell 脚本中使用相同的方法在同一台服务器上运行良好)

这只是一个更大的脚本的一部分,一旦它正常工作,它将被合并

0 投票
1 回答
5408 浏览

ffmpeg - ffprobe 返回 mov,mp4,m4a,3gp,3g2,mj2

我试图找到一种方法来了解给定文件是否使用 h.264 编解码器并且它是可流式传输的。

我正在使用 ffprobe,有时我会得到如下输出:

现在,该文件似乎是可流式传输的,可以在线发布,但我期待的是这样的:

相反,我得到

就指定这个文件到底是什么而言,这似乎非常松懈。我也在使用 MP4Box 来查看视频是否可流式传输,但此时我不确定如何处理特定的 h.264 识别。

我应该怎么做才能确保给定文件具有 h.264 编解码器?

谢谢

0 投票
2 回答
4647 浏览

php - FFProbe 获取编解码器

我尝试了一堆使用 FFProbe 获取视频编解码器的不同示例,包括这个,除了偶尔的[/STREAM].

这就是我目前正在尝试的

这个也试过...

我知道视频很好,它正在 CLI 上运行,因为当我使用以下内容获取持续时间时,我得到了预期的结果

有任何想法吗?

0 投票
1 回答
937 浏览

ffmpeg - ffprobe 两次返回视频流数据

我正在尝试从 ffprobe 返回特定值:

ffprobe -v error -select_streams V:0 -show_entries stream=index,width,height,sample_aspect_ratio,display_aspect_ratio:format=duration -of default=noprint_wrappers=1:nokey=1 test.MTS

输出中的流值重复:

格式值不重复。如果我剥离打印机值以查看发生了什么:

ffprobe -v error -select_streams V:0 -show_entries stream=index,width,height,sample_aspect_ratio,display_aspect_ratio:format=duration test.MTS

我看到一个名为 [PROGRAM] 的部分,其中重复了流 0:

有人可以帮我只返回一次视频流 0 值吗?

0 投票
1 回答
712 浏览

shell - sh脚本中的管道ffprobe

我正在尝试sh使用 ffprobe 在 OSX 脚本中获取音频类型:ffprobe "$i" |& egrep -ci "vorbis|aac"它适用于 cli intcsh但不适用于脚本。|&似乎在脚本内部不起作用。|&重定向 ffprobe 的输出,否则 ffprobe 打印到 cli。任何帮助表示赞赏。

我得到的错误是:

0 投票
5 回答
9027 浏览

ffmpeg - 如何使用 ffprobe 确定 webm 持续时间

我的目标很简单,我有几个 webm 文件需要连接,但首先我需要确定它们的持续时间。

似乎 webm 文件是作为流播放的,所以没有办法知道每个文件的长度。

我一直在使用 ffprobe 来完成这项工作,但返回的持续时间是 N/A。我使用的命令是:

谢谢。

ffprobe 的完整输出列表如下:

0 投票
1 回答
1479 浏览

vb.net - 通过解析 ffprobe 输出以 VB 形式填充字段值

好的。我正在尝试从视频文件中获取相关的媒体信息。为此,我从脚本运行 ffprobe。像这样的东西:

这会创建一个包含以下内容的文件:

我说“类似这样”,因为 Stream #0:0(und): 行上的数据并不总是以相同的顺序排列。我需要从日志中获取以下信息:

  • 持续时间 (00:04:34.41)
  • 编解码器 (h264)
  • 分辨率 (720x480)
  • 宽度(从 x 之前的分辨率)
  • 高度(从 x 后的分辨率)
  • 帧速率 (29.97 fps)
  • 音频编解码器 (aac)
  • 音频采样频率 (48 KHz)
  • 音频质量 (192 kb/s)

在批处理脚本中,我会使用标记和分隔符来扫描我的信息,并检查我是否抓取了正确的数据;如果没有,请尝试下一个令牌。

这是我如何在批处理脚本中执行任务的示例:

我怎样才能在VB中做到这一点?我正在使用 Visual Studio Express 2015 桌面版。

好的,在进行了更多的挖掘和播放之后,这是我设法完成任务的方法:

产生结果:

在此处输入图像描述

我现在需要做的就是使用表单代码中的变量填充表单的字段:Me.[field].text = [variable]这应该很好。

如您所见,我利用curRow()数组来缩小使用mid()InStr()函数的字段。虽然它似乎已经完成了任务,但我不确定这是否是最好的方法,或者是否有其他方法。

如果您有任何改进建议,请告诉我。

0 投票
0 回答
307 浏览

ffprobe - php exec上的ffprobe错误

未找到 ffprobe。php命令:exec('youtube-dl -4 https://www.youtube.com/watch?v=JP4kValjHmw --extract-audio --audio-format mp3 -o deneme.mp3');

与 shell_exec 相同。

但在用户或 root ssh 中没有问题。

安装了 Ffmpeg、youtube-dl、ffprobe、libav-tools。

ffprobe not found 问题仅在 PHP exec/shell_exec 中。

0 投票
2 回答
3934 浏览

ffmpeg - ffmpeg 寻求计算错误的字节范围?

我在尝试从特定时间戳的电影文件中提取缩略图时遇到了问题。一般来说,我对此没有任何问题,但我遇到了一组电影文件,这些文件在请求的字节范围方面出现错误(416 Requested Range Not Satisfiable)。

奇怪的是,服务器在部分内容请求中正确返回了内容长度,但是当它请求电影文件时,它请求的长度超过了该长度。

这有点过头了,所以我不确定这里会发生什么。任何见解都会很棒。

命令:

错误:

源文件大小:

源内容持续时间:

部分内容请求:

FFmpeg 请求:

整个日志:

FFprobe 结果: