douke7274 2016-01-17 19:47
浏览 190
已采纳

PHP ffmpeg输出位置

My website allow users to upload video files to the server. Original file will be move to folder "Original" ffmpeg will compress the video and store the video in 480p folder. how to i setup ffmpeg so that it will store output of the compressed video file into original/480p?

Partial code of 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);

using this FFMPEG command

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");

i get the error 480p\Original/ffbaf58f1231628f9ac2a583f038b51719006ec6480p.mp4: No such file or directory

i will like the output to be stored in original/480p/compressed-video-file

  • 写回答

1条回答 默认 最新

  • duan7664 2016-01-17 19:59
    关注

    First you will need to create a folder in your server: original/480p
    Then change the code to:

    $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 command:

    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");
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
编辑
预览

报告相同问题?

手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部