php获取视频封面图

1.<?php  
2.header("content-type:text/html;charset=utf-8");  
3.date_default_timezone_set('Asia/Shanghai');  
4.  
5.function getCoverImages($fileUrl){  
6.        $result = array();  
7.  
8.        if(!empty($fileUrl)){  
9.            $filePath = str_replace("http://img.baidu.cn/", "/data/images/", $fileUrl);  
10.            if(is_file($filePath)){  
11.                $result = execCommandLine($filePath);  
12.            }  
13.        }  
14.        return json_encode($result);  
15.    }  
16.  
17.    function execCommandLine($file){  
18.        $result = array();  
19.  
20.        $pathParts = pathinfo($file);  
21.        $filename = $pathParts['dirname']."/".$pathParts['filename']."_";  
22.  
23.        $times = array(8,15,25);  
24.        foreach ($times as $k => $v) {  
25.            $destFilePath = $filename.$v.".jpg";  
26.            $command = "/usr/bin/ffmpeg -i {$file} -y -f image2 -ss {$v} -vframes 1 -s 640x360 {$destFilePath}";  
27.            exec($command);  
28.            //chmod($filename.$v."jpg",0644);  
29.            $destUrlPath = str_replace("/data/images/", "http://img.baidu.cn/", $destFilePath);  
30.            $selected = $k == 0 ? "1" : "0";//默认将第一张图片作为封面图  
31.            array_push($result,array($destUrlPath,$selected));  
32.        }  
33.  
34.        return $result;  
35.    }  
36.  
37.$fileUrl="http://img.baidu.cn/14221916FLVSDT1.mp4"  
38.getCoverImages($fileUrl);//截取第8、15、25秒为封面图  
39.  
?> 

 

posted @ 2017-11-30 15:35  壹路桐行丨  阅读(6305)  评论(0编辑  收藏  举报