gpt4 book ai didi

PHP ffmpeg 输出位置

转载 作者:行者123 更新时间:2023-12-04 23:16:23 26 4
gpt4 key购买 nike

我的网站允许用户上传视频文件到服务器。原始文件将移动到文件夹“原始”ffmpeg 将压缩视频并将视频存储在 480p 文件夹中。如何设置 ffmpeg 以便它将压缩视频文件的输出存储到原始/480p?

upload.php的部分代码

$target_dir = "Original/"; //where you want to upload the files to
$target_file = $target_dir.basename($_FILES['file']['name']);
$fileType = pathinfo($target_file, PATHINFO_EXTENSION);
$newFileName = $target_dir.sha1(pathinfo(basename($_FILES['file']['name']), PATHINFO_FILENAME)).'480p'.'.'.$fileType;
//$newFileName = $target_dir.sha1(pathinfo(basename($_FILES['file']['name']), PATHINFO_FILENAME)).'-'.time().'.'.$fileType;
move_uploaded_file($_FILES['file']['tmp_name'], $newFileName);

使用这个 FFMPEG 命令
shell_exec("C:\\ffmpeg\\bin\\ffmpeg.exe -y -i ".$newFileName." -c:v libx264 -s:v 854x480 -c:a copy \"480p\\{$newFileName}\" > logfile.txt 2>&1");

我得到了错误
480p\Original/ffbaf58f1231628f9ac2a583f038b51719006ec6480p.mp4:没有这样的文件或目录

我希望将输出存储在 original/480p/compressed-video-file

最佳答案

首先,您需要在服务器中创建一个文件夹:original/480p然后将代码更改为:

$target_dir = "original/"; //where you want to upload the files to
$target_file = $target_dir.basename($_FILES['file']['name']);
$fileType = pathinfo($target_file, PATHINFO_EXTENSION);
$newFileName = $target_dir.'/480p/'.sha1(pathinfo(basename($_FILES['file']['name']), PATHINFO_FILENAME)).'480p'.'.'.$fileType;
//$newFileName = $target_dir.sha1(pathinfo(basename($_FILES['file']['name']), PATHINFO_FILENAME)).'-'.time().'.'.$fileType;
move_uploaded_file($_FILES['file']['tmp_name'], $newFileName);

FFmpeg 命令:
shell_exec("C:\\ffmpeg\\bin\\ffmpeg.exe -y -i ".$target_file.".".$fileType." -c:v libx264 -s:v 854x480 -c:a copy \"{$newFileName}\" > logfile.txt 2>&1");

关于PHP ffmpeg 输出位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34846990/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com