任何人都可以帮助我。我希望使用php和ffmpeg将视频文件转换为flv。 我已经在stackoverflow上尝试了一些现有的解决方案,但没有运气。
exec('ffmpeg -i Videos/robot.avi -ab 96k -b 700k -ar 44100 -s 640x480 -acodec mp3 Videos/robot.flv');
这是我的代码执行此操作时没有任何反应。
答案 0 :(得分:2)
我假设您的ffmpeg命令可以通过CLI运行。如果没有,请先行动。
如果您尝试使用PHP和ffmpeg输出即时创建的FLV,请尝试以下操作:
<?php
header("video/x-flv");
passthru('ffmpeg -i Videos/robot.avi -ab 96k -b 700k -ar 44100 -s 640x480 -acodec mp3 Videos/robot.flv');
?>
####编辑#####
以下是关于使用STDOUT的ffmpeg文档的链接:http://www.ffmpeg.org/ffmpeg-doc.html#TOC41
我认为你应该能够做到这一点:
<?php
header("video/x-flv");
passthru('ffmpeg -i Videos/robot.avi -ab 96k -b 700k -ar 44100 -s 640x480 -acodec mp3 -f flv pipe:');
?>
答案 1 :(得分:2)
查看此示例:https://trac.ffmpeg.org/wiki/PHP
在编写PHP脚本之前,您应首先在CLI中运行它。
阅读完示例后,您似乎想要使用
shell_exec("insert ffmpeg command here");
这是一个可能有用的ffmpeg php类:
答案 2 :(得分:0)
我需要'sudo'才能在我的本地机器上运行它。 对于video / x-flv,您需要:“Content-Type:video / x-flv”。 我的代码:
<?php
header("Content-Type: video/x-flv");
passthru('sudo ffmpeg -i Videos/robot.avi -ab 96k -b 700k -ar 44100 -s 640x480 -acodec mp3 -f flv pipe:');
?>