加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 视频缩略图

发布时间:2020-12-13 21:59:56 所属栏目:PHP教程 来源:网络整理
导读:我正在一个人们可以提交视频链接的网站上工作.然后我就把它嵌入了.但是,我想获取视频的缩略图而不保存我服务器中的视频.因此,当我列出视频时,我可以使用缩略图而不是嵌入所有视频. 我的服务使用PHP.假设视频采用SWF格式. 我可以’抓
我正在一个人们可以提交视频链接的网站上工作.然后我就把它嵌入了.但是,我想获取视频的缩略图而不保存我服务器中的视频.因此,当我列出视频时,我可以使用缩略图而不是嵌入所有视频.

我的服务使用PHP.假设视频采用SWF格式.

我可以’抓住’缩略图吗?或标签中有什么东西?或者在PHP中,有什么东西我可以远程获取远程视频的缩略图(或帧)吗?

任何的想法?

解决方法

你可以使用’ffmpeg’.通过使用PHP来调用它.

shell_exec  ("ffmpeg -i "$FILENAME.flv" -ss 00:00:04 -f image2 "$FILENAME.jpg"");

我很遗憾地说我没有测试过,所以先试试吧.

编辑:为了好玩,我把它变成了一个功能.这里是:

<?php
?
function GetThumbnailFileName($FileName,$ScreenShortSecond = 10) {
    $VDOLastModifiedDate = filemtime($FileName);
    $Thumbnail_FileName  = sprintf("%s-(%s::%02d).jpg",$FileName,$VDOLastModifiedDate,$ScreenShortSecond);
    ?
    if (!file_exists($Thumbnail_FileName)) {
        $FFMPEG_Command = sprintf(
            "ffmpeg -i "%s" -y -ss "00:00:%02d" -f image2 "%s" > /dev/null 2>&1",0 + $ScreenShortSecond,$Thumbnail_FileName
        );
        system($FFMPEG_Command);
    }
    ?
    if (!file_exists($Thumbnail_FileName))
        return null;
    ?
    return $Thumbnail_FileName;
}
?
$FileName  = "Test.flv";
$Thumbnail = GetThumbnailFileName($FileName);
if ($Thumbnail != null)
     echo "Thumbnail file is: "$Thumbnail"n";
else echo "Fail creating a Thumbnail of "$FileName".";
?
?>

此功能还会缓存缩略图,并确保在修改VDO时重新创建更新缩略图.

请享用

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读