查询已上传华为云视频的时长,大小等基础信息

1.首先添加相应的依赖

        <dependency>
            <groupId>com.aliyun</groupId>
            <artifactId>dysmsapi20170525</artifactId>
            <version>2.0.4</version>
        </dependency>
        <dependency>
            <groupId>com.aliyun</groupId>
            <artifactId>aliyun-java-sdk-core</artifactId>
            <version>4.5.16</version>
        </dependency>

2.Service定义的需要在配置文件里面去配置

// 日志打印
import com.btn.common.exception.ErrorCodeEnum;
import com.cloud.sdk.ServiceException;
import com.huawei.mpc.client.MpcClient;
import com.huawei.mpc.client.MpcConfig;
import com.huawei.mpc.model.ObsObjInfo;
import com.huawei.mpc.model.extract.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;



/**
 * @author 93
 * @version 1.0
 */
@Component
public class VideoExtractTaskService {

    private static final Logger logger = LoggerFactory.getLogger(VideoExtractTaskService.class);

    @Value("${huaweiObs.mpcendPoint}")
    private String mpcendPoint;

    @Value("${huaweiObs.ak}")
    private String ak;

    @Value("${huaweiObs.projectId}")
    private String projectId;

    @Value("${huaweiObs.sk}")
    private String sk;

    @Value("${huaweiObs.bucketName}")
    private String bucketName;


    /**
     * 获取视频时长
     * @return
     */
    public MetaData queryVideoDuration(String url) {
        try {
            //1.MPC配置信息设置
            MpcConfig mpcConfig = new MpcConfig();
            mpcConfig.setEndPoint(mpcendPoint);
            mpcConfig.setProjectId(projectId);
            mpcConfig.setSk(sk);
            mpcConfig.setAk(ak);
            //2.初始化MPC客户端
            MpcClient mpcClient = new MpcClient(mpcConfig);
            //3. ObsObjInfo 信息配置
            ObsObjInfo input = new ObsObjInfo();
            input.setBucket(bucketName);
            input.setLocation("cn-east-3");
            //对路径进行截取                                                                                                       
 input.setObject(url.substring(url.lastIndexOf("/",url.lastIndexOf("/",url.lastIndexOf("/")-1)-1) + 1));
            CreateExtractTaskReq req = new CreateExtractTaskReq();
            req.setInput(input);
            // MPC客户端创建视频解析请求并返回
            CreateExtractTaskRsp extractTask = mpcClient.createExtractTask(req);
            MetaData metadata = extractTask.getMetadata();
            return metadata;
        }catch (ServiceException exception){
            throw new com.btn.common.exception.ServiceException(ErrorCodeEnum.FAIL.getErrorCode(),"视频解析任务异常-->"+ exception.getErrorMessage());
        }
    }
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值