当代互联网,各种短视频涌入市场,当用户下载视频时想要多个视频拼接下载为同一个,以下就是实现的简单说明。

一、七牛云
1、注册账号后,进入对象存储,新建存储空间
在这里插入图片描述
2、进入多媒体队列,添加队列
在这里插入图片描述

添加完成后,可以新建作业,测试效果,在作业列表查看状态

在这里插入图片描述

备注:合成或转码的所有视频必须在同一目录下,否则转码失败

二、功能代码实现
1、引用七牛云视频拼接SDK
2、七牛云文档中,复制拼接(或转码)的代码

public function qiniuvideo() {
        $rs = array('code' => 0, 'msg' => '', 'info' => array());
		require_once API_ROOT.'/../sdk/phpqiniu/autoload.php';		//引用七牛云视频拼接sdk
		//对已经上传到七牛的视频发起异步转码操作
		$accessKey = "";                                            //七牛云 ak
		$secretKey = '';										    //七牛云sk
		$bucket = '';                                               //七牛云存储桶名称
		$auth = new Auth($accessKey, $secretKey);
		//要转码的文件所在的空间和文件名。

3、其中拼接与转码的代码分别为图中注释圈起来的,使用其中一种需要把另外一个注释掉
A)、拼接代码:

//视频拼接**************************************
			$encodedUrl1 = Qiniu\base64_urlSafeEncode("http://XXXX.com/121qiniu_flv_to1586942670.mp4");//拼接(转码)的云视频全路径
			$filename="1qiniu_flv_to".time().".mp4";
			$encodedUrl2 = Qiniu\base64_urlSafeEncode('http://XXX.com/121qiniu_flv_to1586942682.mp4');
			$fops = 'avconcat/2/format/mp4/'.$encodedUrl1.'/'.$encodedUrl2;                            //拼接fops参数,所有的需要拼接(转码)的云视频
			list($id, $err) = $pfop->execute($bucket, $key, $fops, $pipeline, $notifyUrl, $force);
 //视频拼接**************************************

B)、转码代码:

//***************转码**************************************
		//要进行转码的转码操作。 http://developer.qiniu.com/docs/v6/api/reference/fop/av/avthumb.html
		/* $filename="121qiniu_flv_to".time().".mp4";
		// $fops = "avthumb/mp4/s/640x360/vb/1.4m|saveas/" . \Qiniu\base64_urlSafeEncode($bucket . ":".$filename);
		$fops = "avthumb/mp4/s/720x1024/aspect/57:119|saveas/" . \Qiniu\base64_urlSafeEncode($bucket . ":".$filename);	
		list($id, $err) = $pfop->execute($bucket, $key, $fops, $pipeline, $notifyUrl, $force); */
		//***************转码*************************************

三、实现步骤
1、视频转码:将不同格式的视频全部转码为mp4格式
2、转码后,调用检查转码状态的接口,转码成功返回code=0
3、拼接视频
4、获取合成视频云地址
查看转码、拼接状态地址:
http://api.qiniu.com/status/get/prefop?id=下图中的ID值
该ID值可在回调地址中接收获取
在这里插入图片描述

资源下载:
1、七牛云存储视频拼接Sdk:
链接:https://pan.baidu.com/s/1Z2Oh_bb9E2Iw00Je80oaBA
提取码:3scf
2、Phalapi源码:
链接:https://pan.baidu.com/s/1e0mQFCAX_UOqwzoWqRqMVw
提取码:j8uo

以上为七牛云实现视频拼接简单步骤,本文为php语言,其他语言可参考七牛云文档。

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐