Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
需要在php中使用ffmpeg的帮助吗_Php_Video_File Upload_Ffmpeg - Fatal编程技术网

需要在php中使用ffmpeg的帮助吗

需要在php中使用ffmpeg的帮助吗,php,video,file-upload,ffmpeg,Php,Video,File Upload,Ffmpeg,我在一个视频上传网站上工作。但我从未转换过其他用户的视频。所有的迹象都指向使用ffmpeg,但我真的迷路了。我已经在我的xampp文件夹中的htdocs文件夹中正确地安装了它,并且上传文件php设置正确,因为它确实上传了视频文件并将文件移动到了正确的文件夹中。我确实有我认为在php代码中可以使用的ffmpeg代码,但它不起作用。我需要使所有的文件.mp4无论输入文件格式是什么。如果有人能帮我解决这个问题,我将不胜感激 “htdocs\new video\upload\index.php”是我获取

我在一个视频上传网站上工作。但我从未转换过其他用户的视频。所有的迹象都指向使用ffmpeg,但我真的迷路了。我已经在我的xampp文件夹中的htdocs文件夹中正确地安装了它,并且上传文件php设置正确,因为它确实上传了视频文件并将文件移动到了正确的文件夹中。我确实有我认为在php代码中可以使用的ffmpeg代码,但它不起作用。我需要使所有的文件.mp4无论输入文件格式是什么。如果有人能帮我解决这个问题,我将不胜感激

“htdocs\new video\upload\index.php”是我获取ffmpeg代码和上传文件的地方。htdocs\phpffmpeg\文件夹只是phpffmpeg和ffmpeg安装的常规结构

这是上传和ffmpeg exec的代码

        $name = $_FILES["file"]["name"];
        $temp = explode(".", $_FILES["file"]["name"]);
        $extension = end($temp);

        move_uploaded_file($_FILES["file"]["tmp_name"],
        "(my file location that I move the file to)" . $_FILES["file"]["name"]);

        shell_exec("ffmpeg -i $name.$extension -b 1500k -vcodec libx264 -vpre slow -vpre baseline -g 30 $name.mp4");

正如我所说,上传和移动到文件夹工作得很好。问题在于不转换。非常感谢所有链接、提示和信息。希望每个人都有美好的一天。

你也需要告诉ffmpeg文件在哪里

e、 g.你正在做:

$destination = '/some/path/on/your/server/kittens.mp4'
move_uploaded_file($_FILES['file']['tmp_name'], $destination);
exec('ffmpeg .....    kittens.mp4');
                     ^---oops, no path
应该是什么时候

exec('ffmpeg .... /some/path/on/your/server/kittens.mp4');

如果要使用目录use C:\\

一种更简单的方法可能是使用,api比FFMPEG简单得多。
 shell_exec("cmd /c ffmpeg -i $name.$extension -b 1500k -vcodec libx264 -vpre slow -vpre baseline -g 30 $name.mp4");