七牛云上传音视频时进行切片处理

    现在视频播放太慢,上传的视频进行切片处理,修改常用的七牛云上传方法,增加切片处理方法,记录一下

public class QiniuCloudService{
 private UploadManager uploadManager;
 private String token;
 private Auth auth;
 private OperationManager operater;
 public QiniuCloudService(CloudConfig config){
 this.config = config;
 //初始化
 init();
 }
 private void init(){
 uploadManager = new UploadManager(new Configuration(Zone.autoZone()));
 auth = Auth.create(config.getQiniuAccessKey(), config.getQiniuSecretKey());
 token = auth.uploadToken(config.getQiniuBucketName());
 }
 /**
 * 上传
 * @param data
 * @param path
 * @return
 * @throws QiniuException
 */
 public String upload(byte[] data, String path) {
 try {
 Response res = uploadManager.put(data, path, token);
 if (!res.isOK()) {
 throw new RuntimeException("上传七牛云出错:" + res.toString());
 }
 } catch (Exception e) {
 throw new RRException("上传文件失败", e);
 }
 return config.getQiniuDomain() + "/" + path;
 }
 /**
 * 切片处理
 * @param data
 * @param path
 * @return
 * @throws QiniuException
 */
 public String uploadFop(byte[] data, String path) throws QiniuException {
 String resultUrl = this.upload(data, path);
 operater = new OperationManager(auth, new Configuration(Zone.autoZone()));
 //设置当前要转码的视频的所在空间,即path所在空间
 String bucket = "sp-tv";
 //设置转码操作参数
 String fops = "选择合适的转码参数";
 //设置转码的队列
 String pipeline = "sp";
 //可以对转码后的文件进行使用saveas参数自定义命名,当然也可以不指定文件会默认命名并保存在当前空间。
//目标空间:文件路径
 String urlbase64 = UrlSafeBase64.encodeToString("sp-hls-tv:" + path + ".m3u8");
 String pfops = fops + "|saveas/" + urlbase64;
 //设置pipeline参数
 StringMap params = new StringMap().putWhen("force", 1, true).putNotEmpty("pipeline", pipeline);
 try {
 String persistid = operater.pfop(bucket, path, pfops, params);
 } catch (QiniuException e) {
 //捕获异常信息
 Response r = e.response;
 // 请求失败时简单状态信息
 System.out.println(r.toString());
 try {
 // 响应的文本信息
 System.out.println(r.bodyString());
 } catch (QiniuException e1) {
 //ignore
 }
 }
 return resultUrl;
 }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值