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

七牛上传的视频,让截图变成一张独立存在的图片(持久化数据处理

发布时间:2020-12-14 04:48:59 所属栏目:大数据 来源:网络整理
导读:一、与七牛工程师勾兑中: willem 2018-06-02 09:10 如题,我想让上传的视频中,截图变成一张独立存在的图片,请问有什么好的办法么?谢谢 七牛云工程师 2018-06-02 09:10 您的问题我们已收到,会尽快为您查看。请您耐心等待,谢谢 ! 七牛云工程师 2018-06-

一、与七牛工程师勾兑中:

willem 2018-06-02 09:10

如题,我想让上传的视频中,截图变成一张独立存在的图片,请问有什么好的办法么?谢谢

七牛云工程师 2018-06-02 09:10
您的问题我们已收到,会尽快为您查看。请您耐心等待,谢谢 !
七牛云工程师 2018-06-02 09:28

您好,

您可以使用视频截帧操作并进行保存,

参考文档

视频截帧 https://developer.qiniu.com/dora/manual/1313/video-frame-thumbnails-vframe

另存为 https://developer.qiniu.com/dora/manual/1305/processing-results-save-saveas

持久化处理 https://developer.qiniu.com/dora/manual/1291/persistent-data-processing-pfop

willem 2018-06-02 09:52

关于这个功能,请问有相关java sdk的demo或者示例么?谢谢

2018-06-02 10:06

您好,

持久化处理是有对应demo的,具体的操作参数您进行替换就可以了

https://developer.qiniu.com/kodo/sdk/1239/java#8

https://github.com/qiniu/java-sdk/blob/master/examples/pfop_vframe.java



二、关于【持久化数据处理】

对于已经保存到七牛空间的文件,可以通过发送持久化的数据处理指令来进行处理,这些指令支持七牛官方提供的指令,也包括客户自己开发的自定义数据处理的指令。数据处理的结果还可以通过七牛主动通知的方式告知业务服务器。


三、java sdk代码:

注意:代码中的【pipeline】,我一开始也懵逼,七牛的pipeline是什么???就是七牛控制平台下图这个【多媒体队列】这名称



import com.qiniu.common.QiniuException;
import com.qiniu.http.Response;
import com.qiniu.processing.OperationManager;
import com.qiniu.util.Auth;
import com.qiniu.util.StringMap;
import com.qiniu.util.UrlSafeBase64;

public class OperateDemo {

    public static void main(String[] args) throws QiniuException {
        //设置账号的AK,SK
        String ACCESS_KEY = "Access_Key";
        String SECRET_KEY = "Secret_Key";
        Auth auth = Auth.create(ACCESS_KEY,SECRET_KEY);
        //新建一个OperationManager对象
        OperationManager operater = new OperationManager(auth);
        //设置要转码的空间和key,并且这个key在你空间中存在
        String bucket = "Bucket_Name";
        String key = "Bucket_key";
        //设置转码操作参数
        String fops = "vframe/jpg/offset/1/w/480/h/360/rotate/90";
        //设置转码的队列
        String pipeline = "yourpipelinename";
        //可以对转码后的文件进行使用saveas参数自定义命名,当然也可以不指定文件会默认命名并保存在当前空间。
        String urlbase64 = UrlSafeBase64.encodeToString("目标Bucket_Name:自定义文件key");
        String pfops = fops + "|saveas/" + urlbase64;
        //设置pipeline参数
        StringMap params = new StringMap().putWhen("force",1,true).putNotEmpty("pipeline",pipeline);
        try {
            String persistid = operater.pfop(bucket,key,pfops,params);
            //打印返回的persistid
            System.out.println(persistid);
        } catch (QiniuException e) {
            //捕获异常信息
            Response r = e.response;
            // 请求失败时简单状态信息
            System.out.println(r.toString());
            try {
                // 响应的文本信息
                System.out.println(r.bodyString());
            } catch (QiniuException e1) {
                //ignore
            }
        }
    }
}

文末提醒,如需回调,如下方法,需要七牛较高版本【七牛客服推荐的7.2.11

String?persistentId?=?operationManager.pfop(bucket,?key,?persistentOpfs,?persistentPipeline,?persistentNotifyUrl,true);???

(编辑:李大同)

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

    推荐文章
      热点阅读