阿里云实现 视频截帧+网络流上传

视频截帧+网络流上传

引入依赖

        <dependency>
            <groupId>com.aliyun.oss</groupId>
            <artifactId>aliyun-sdk-oss</artifactId>
            <version>3.10.2</version>
        </dependency>

使用

public class AliyunOssUtil {
    
    
    /*
    * 1.Endpoint(访问域名)
    * 2.AccessKey(访问密钥)
    * 3.密钥密码
    * 将以上3个声明为成员变量,避免代码冗余
    * */
    // Endpoint以杭州为例,其它Region请按实际情况填写。
    private static String endpoint = "";//1
    // 阿里云主账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM账号进行API访问或日常运维,请登录RAM控制台创建RAM账号。
    private static String accessKeyId = "";//2
    private static String accessKeySecret = "";//3

    /*
    * 截取视频帧数
    * 参数:
    * 1.Bucket名字
    * 2.要截取的视频的位置,目录+文件名
    * 返回值:截取完的图片路径
    * */
    public static URL snapshot(String bucketName,String objectName){
    
    
        // 创建OSSClient实例。
        OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);
        // 设置视频截帧操作。
        String style = "video/snapshot,t_50000,f_jpg,w_800,h_600";
        // 指定过期时间为10分钟。
        Date expiration = new Date(new Date().getTime() + 1000 * 60 * 10 );
        GeneratePresignedUrlRequest req = new GeneratePresignedUrlRequest(bucketName, objectName, HttpMethod.GET);
        req.setExpiration(expiration);
        req.setProcess(style);
        URL signedUrl = ossClient.generatePresignedUrl(req);
        System.out.println(signedUrl);
        // 关闭OSSClient。
        ossClient.shutdown();
        return signedUrl;
    }

    /*
    * 上传网络流
    * 参数:
    * 1.截取完图片后的URL.toString
    * 2.Bucket名字
    * 3.要上传到的目录+文件名
    * */
    public static void UploadNetworkStream(String url, String bucketName,String objectName) throws IOException {
    
    
        // 创建OSSClient实例。
        OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);
        // 上传网络流。
        InputStream inputStream = new URL("https://www.aliyun.com/").openStream();
        ossClient.putObject(bucketName, objectName, inputStream);
        // 关闭OSSClient。
        ossClient.shutdown();
    }
}

更多可见阿里云官网:https://help.aliyun.com/knowledge_detail/64555.html

猜你喜欢

转载自blog.csdn.net/qq_45928727/article/details/107162687