使用PHP上传视频

使用PHP上传视频,php,image,file-upload,Php,Image,File Upload,我使用以下代码上传视频 $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)){ $n

我使用以下代码上传视频

    $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);
        }
     }
它工作正常。即成功地将视频移动到视频文件夹,并将视频名称插入数据库表。但问题与这段视频的拇指图像有关。Thumb名称已插入数据库,但图像未上载到video_Thumb文件夹。。。。。。。
请帮助我……

我看到的唯一问题是ffmpeg命令行中的文件名。如果它包含特殊字符,则应使用
escapeshellarg()

这与php5或文件上载无关。问题在于您的ffmpeg调用应该生成缩略图。因为某种原因,它没有成功。我对ffmpeg了解不够,不知道那个问题是什么。但这看起来确实像是ffmpeg的问题。您是否尝试过先执行图像创建ffmpeg命令?如果它不起作用,那么您可能会有一个错误,您可以通过为exec调用指定第二个或第三个参数来捕获该错误。