kkFileview(十三)——视频图片处理

2021SC@SDUSC

        对视频文件的处理封装在类MediaFilePreviewImpl中,包含filePreviewHandle文件预览处理、convertUrl检查视频文件处理逻辑、checkNeedConvert检查是否需要转换、convertToMp4遇到浏览器无法处理的视频格式时将视频格式转换为MP4。

目录

1、文件预览处理

2、处理视频文件

 3、将不兼容格式转换成MP4

4、检查视频文件是否需要转换 


1、文件预览处理

        首先根据url判断文件是不是浏览器可以直接访问的(是http开头),若不是则调用DownloadUtils工具类中的downLoad方法将文件下载到本地,之后调用BaseUrlFilter工具类的getBaseUrl() 方法和fileHandlerService的getRelativePath方法获取下载后的url,并赋给fileAttribute文件属性对象方便日后调用。

        之后调用类中的checkNeedConvert方法检查文件是否需要转换,若需要则调用convertUrl检查视频逻辑并返回处理后的url。若是正常的视频类型,说明不需要转换,调用ConfigConstants的getMedia()方法获取视频类型。

        进入for循环,通过判断文件属性后缀media.equals(fileAttribute.getSuffix())来判断文件是否系统可以处理的视频类型,并返回 MEDIA_FILE_PREVIEW_PAGE,若循环结束后都不存在匹配,则返回“暂不支持该文件类型”。

    @Override
    public String filePreviewHandle(String url, Model model, FileAttribute fileAttribute) {
        // 不是http开头,浏览器不能直接访问,需下载到本地
        if (url != null && !url.toLowerCase().startsWith("http")) {
            ReturnResponse<String> response = DownloadUtils.downLoad(fileAttribute, fileAttribute.getName());
            if (response.isFailure()) {
                return otherFilePreview.notSupportedFile(model, fileAttribute, response.getMsg());
            } else {
                url=BaseUrlFilter.getBaseUrl() + fileHandlerService.getRelativePath(response.getContent());
          
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值