七牛云-音视频拼接详解

项目中要用到七牛的音视频拼接,但是文档有不明白的地方,实验后做了下注释,以免忘记。

public static void main(String[] args) {
		//参考 http://developer.qiniu.com/code/v7/sdk/java.html#pfop
		//假如要要将key为 shenshi-1.mp3 、 shenshi-2.mp3 、 shenshi-3.mp3 的3个片段拼接成一个名为 shenshi.mp3  的音频
		
		//设置账号的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);
		//设置要转码的空间
		String bucket = "Bucket_Name";
		//这个key是你要拼接的第一个音频的key
		String key = "shenshi-1.mp3";
		//fops参数的的格式 http://developer.qiniu.com/code/v6/api/dora-api/av/avconcat.html
		//第二个和第三个音频的key需要和 目标Bucket_Name 一起进行Base64编码
		String fops = "avconcat/2/format/mp3/"
				+UrlSafeBase64.encodeToString("目标Bucket_Name:shenshi-2.mp3(第二个拼接的音频)")+"/"
				+UrlSafeBase64.encodeToString("目标Bucket_Name:shenshi-3.mp3(第三个拼接的音频)");
		//设置转码的队列,这个可以在七牛后台点击 “添加资源”添加;这个也可以不用设置,把下面的 params 参数设为 null 就可以了。
		String pipeline = "yourpipelinename";
		//最终拼接成的音频key是自己定义的,需要和 目标Bucket_Name 一起进行Base64编码
		String urlbase64 = UrlSafeBase64.encodeToString("目标Bucket_Name:shenshi.mp3(最终拼接成文件的key)");
		String pfops = fops + "|saveas/"+urlbase64;
		//设置pipeline参数
		StringMap params = new StringMap().putWhen("force", 1, true).putNotEmpty("pipeline", pipeline);
		try {
			//拼接文件越大,所花的时间越多,如果有必要,可以设置回调通知url
			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
			}
	  }
	}




 
 

猜你喜欢

转载自blog.csdn.net/lercent/article/details/51557499