php - 无法使用 exec 命令来使用 ffmpeg

标签 php ffmpeg

我正在研究 ffmpeg 的使用很长一段时间,对我来说似乎没有什么困惑。最后我发现如果系统上安装了ffmpeg,PHP的exec命令可以帮助执行ffmpeg命令。我在下面创建了 php 脚本:

  exec("ffmpeg -i C:\Users\sameeksha\Downloads\v.mp4 -ar 22050 -ab 32 -f flv -s 320x240 C:\FFMPEG\video.flv", $output, $return);

     if($return) {
        echo "created ".$output;     
    }
    else 
        echo "not ".$output;

从命令行运行的相同命令正在创建转换后的视频,但是当我将它作为 PHP 脚本运行时,它不会。我什至为 ffmpeg 安装了 dll 文件,但仍然对我不起作用。

任何帮助,将不胜感激。

最佳答案

您需要在双引号字符串中转义反斜杠。

示例:C:\FFMPEG\video.flv需要C:\\FFMPEG\\video.flv
或者只使用斜杠:C:/FFMPEG/video.flv
您还可以将命令括在撇号而不是引号中,因为撇号会阻止转义序列提供 \不是您输入的最后一个字符。

exec('ffmpeg -i ... ',  $output, $return);

关于php - 无法使用 exec 命令来使用 ffmpeg,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29221869/

相关文章:

php - 服务器使用 gmail 发送电子邮件 smtp 获取警报

php - 选择列文本包含数组值的行

PHP 和 MySQL 到 Android 的翻译

ios - mp4伪流媒体实现服务端&iOS端

python - 无法在 Moviepy 中添加文本剪辑。获取与 Imagemagic 相关的错误

php - 将 HTML 存储到 JavaScript 变量中

php - Wordpress:将 if-else 语句插入 next_post_link()/previous_post_link() 参数?

FFmpeg - 具有 4 个区域和不同播放时间的多个视频

c++ - FFmpeg:如何在从 RTSP 读取时控制控制台输出?

python - 使用 ffmpeg 删除视频的多个部分