Php 如何使用ffmpeg从视频中获取缩略图
几个星期以来,我一直在想如何使用Php 如何使用ffmpeg从视频中获取缩略图,php,video,ffmpeg,Php,Video,Ffmpeg,几个星期以来,我一直在想如何使用ffmpeg在php中上传视频时从视频中获取缩略图。 这是我的代码,我不知道我哪里出错了,请帮助 <?php if (logged_in() === true) { if (isset($_POST['up'], $_FILES['file'])) { $file_name = $_FILES['file']['name']; $file_type = explode('.', $file_name);
ffmpeg
在php
中上传视频时从视频中获取缩略图。
这是我的代码,我不知道我哪里出错了,请帮助
<?php
if (logged_in() === true) {
if (isset($_POST['up'], $_FILES['file'])) {
$file_name = $_FILES['file']['name'];
$file_type = explode('.', $file_name);
$file_type = strtolower(end($file_type));
$random = rand();
$file_tmp = $_FILES['file']['tmp_name'];
$file_dir = "jobalertme/includes/video_uploads/$random.$file_type";
if ($file_type == 'mp4' || $file_type == 'avi' || $file_type == 'wmv' || $file_type == 'mov' || $file_type == 'flv') {
if (move_uploaded_file($file_tmp, "$file_dir")) {
$ffmpeg = "C:\\ffmpeg\\bin\\ffmpeg";
$img_name = "1.jpg";
$img_size = "120x90";
$getimgsec = 5;
$cmd = "$ffmpeg -i $file_tmp -an -ss $getimgsec -s $img_size www/jobalertme/includes/img_thumnail/$img_name <br>";
if (shell_exec($cmd)) {
echo "ok";
} else {
echo "not";
}
$updat = "UPDATE registration SET video='$file_dir' WHERE uname='$username'";
$qry = mysqli_query($con, $updat);
if ($qry) {
echo "<script> alert('your file has been successfully uploaded ')</script>";
echo "<script>window.open('upload_vid.php','_self')</script>";
exit();
} else {
echo "<script> alert('we ran into some problems')</script>";
echo "<script>window.open('upload_vid.php','_self')</script>";
exit();
}
} else {
echo "<script> alert('we ran into some problems')</script>";
echo "<script>window.open('upload_vid.php','_self')</script>";
exit();
}
} else {
echo "<script>alert('please this file extension is not allowed, it must be an mp4 file format')</script>";
echo "<script>window.open('upload_vid.php','_self')</script>";
exit();
}
}
} else {
echo "<script>alert('please you need login before you can upload resume.')</scrpt>";
echo "<script>window.open('upload_vid.php','_self')</script>";
exit();
}
?>
这需要更多信息,收集这些信息可能会帮助您解决问题。使用move\u uploaded\u file
将文件移动到另一个目录,但在ffmpeg命令中没有使用目标文件的完整路径,因此请尝试使用完整路径,看看是否有效。将整个$cmd变量记录在某个地方,然后查看它是否从交互式shell运行。shell_exec
的php文档建议它返回一个字符串,而不是布尔值,请尝试保存输出并查看它是什么。move\u uploaded\u file
命令是否有效?ffmpeg给出了什么错误消息?我放置了完整目录并删除了if语句,但仍然不起作用