【发布时间】:2012-12-16 01:05:39
【问题描述】:
我正在使用以下代码上传视频
$img1 = $_FILES['video']['name'];
if (!empty($img1)) {
$fname = $_FILES['video']['name'];
$img_name1 = "video/" . $fname;
if(move_uploaded_file($_FILES['video']['tmp_name'], $img_name1)){
$new_name = ShowFileName($fname);
$output = 'video/'.$new_name.'.flv';
$command = "$ffmpegpath -i $img_name1 -s 486x368 -b 400kb -ac 1 -ar 44100 -r 25 -s 320x240 -f flv $output";
$command = $ffmpegpath.' -i'.$img_name1.' -s 486x368 -b 400kb -ac 1 -ar 44100 -r 25 -qmin 3 -qmax 5 -y '.$output;
exec($command);
$thumb_dir = 'video_thumbs/';
$thumb = $new_name.'jpg';
exec($ffmpegpath .' -i '.$img_name1.' -an -y -f mjpeg -ss 0.05 -vframes 1 '.$thumb_dir.$img_name1);
unlink($img_name1);
}
}
它工作正常。即成功将视频移动到视频文件夹并将视频名称插入数据库表。但问题与该视频的拇指图像有关。拇指名称已插入数据库,但图像未上传到 video_thumb 文件夹...... 请帮帮我....
【问题讨论】:
-
这与php5或文件上传无关。问题在于您应该制作缩略图的 ffmpeg 调用。由于某种原因,它没有成功。我对ffmpeg知之甚少,不知道这个问题是什么。但这绝对看起来像是一些 ffmpeg 问题。
-
你有没有试过先执行创建ffmpeg的镜像命令?如果它不起作用,那么您可能会遇到错误,您可以通过为 exec 调用指定第二个或第三个参数来捕获该错误。 php.net/manual/en/function.exec.php
标签: php image file-upload