【发布时间】:2012-04-01 16:39:36
【问题描述】:
我一直在尝试使用 php5-ffmpeg 扩展来获取远程 mp3(和其他格式)元数据。
虽然我总是缺少标题、作者、评论、艺术家详细信息,但它正在工作。
我一直在网上搜索答案,但没有找到任何解决方案。
我确实找到了这个补丁http://cvs.pld-linux.org/cgi-bin/viewvc.cgi/cvs/packages/php-ffmpeg/tests-metadata-api.patch,我认为它可以解决问题,但是即使没有补丁我也无法编译 php-ffmpeg,因此无法确定它是否可以解决问题。
似乎这个扩展在几年前就被放弃了,所以我对让它发挥作用并不抱太大希望。
有人知道如何使用其他工具从音频视频文件中获取远程元数据吗?
我正在考虑使用“-i”选项解析 ffmpeg itelf 的输出,因为这确实返回了正确的元数据。出于安全原因,在 PHP 中调用 exec 有点谨慎。
【问题讨论】:
-
为了它的价值,我也只是用
exec()调用FFMPEG。但是,我这样做主要是因为我一直无法正确构建/安装 PHP 扩展。部分原因与托管我的服务器的人有关,但最后,致电exec()似乎总是容易得多。只需验证您传递给它的任何参数,就可以了。 -
我也在我的服务器上使用 exec(),即使是基于用户请求的 wget(获取文件)(因为它们可以在后台运行而无需 php 等待)。在那种情况下,我将函数本身不是放在 public_html 中,而是放在由脚本或 crontab 包含/需要或执行的某些路径中。我也让它尽可能静态,只有函数需要的必要变量。人们可以做坏事的唯一方法是登录我的 ftp 并更改它 - 这在任何时候都不应该是可能的:)
-
很公平,感谢到目前为止的 cmets。我只是要做类似的事情并解析 ffmpeg 输出本身。如果我知道更多 C 语言,我可能会尝试自己修复 PHP 扩展。也许我应该学习!