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

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

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);   




评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

多来哈米

还可以打赏???来试一毛

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值