【问题标题】:FFMPEG is working in localhost and in terminal, but not working on live websiteFFMPEG 在 localhost 和终端中工作,但不能在实时网站上工作
【发布时间】:2021-12-18 11:41:11
【问题描述】:

这里是 localhost 的路径:

/Applications/MAMP/htdocs/NAME_OF_WEBSITE/
/usr/local/bin/ffmpeg

以下是实时网站的路径:

/var/www/html/NAME_OF_WEBSITE/
/usr/bin/ffmpeg

最后,这里是 localhost 和 live 网站的命令:

LOCAL
=====
exec('/usr/local/bin/ffmpeg -i "' . $uploaded_file . '" -c:v libx264 "./videos/' . $video_mp4 . '" -y 1>2>&1');
LIVE
====
exec('/usr/bin/ffmpeg -i "' . $uploaded_file . '" -c:v libx264 "./videos/' . $video_mp4 . '" -y 1>2>&1');

在实时网站上,php 代码未读取“ffmpeg”文件。有人可以帮我吗?

【问题讨论】:

  • 你检查过exec()函数的输出吗?
  • 我做到了,而且有效。我还添加了 php error_reporting,它显示“注意:未定义的索引:第 9 行 /var/www/html/NAME_OF_WEBSITE/video-upload.php 中的文件”。第 9 行显示“$file_name = basename($_FILES['file']['name']);”
  • 那你为什么在你的问题中说它不起作用?无论如何,该错误与您的问题无关。我建议阅读讨论Handling file uploads 的手册或使用好的教程。
  • 我刚刚运行了一个函数,看看它是否有效。但视频未转换为 mp4。
  • 你需要做一些调试。请参阅:PHP parse/syntax errors; and how to solve them。这需要一些练习。

标签: php ffmpeg video-conversion


【解决方案1】:

我终于明白了。我会告诉你我是怎么做到的,但我真的不了解自己。我一直在玩语法,直到我最终弄对为止。这是使它工作的'exec()':"exec("/usr/bin/ffmpeg -i $uploaded_file videos/$db_file_name");"它一直在 exec() 中,我认为是 ffmpeg 的路径是罪魁祸首。当 KIKO Software 让我专注于语法时,他是正确的。

【讨论】:

  • 很高兴你听说你最终成功了。
猜你喜欢
  • 2014-10-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-29
  • 2021-11-14
  • 1970-01-01
  • 2020-02-13
相关资源
最近更新 更多