最近有一个项目需要使用ffmpeg处理视频,这里我写了一个demo,方便我们来实现视频操作
ffmpeg操作demo:https://download.csdn.net/download/huaweichenai/63975087
使用简单示例
这里注意如果无法执行ffmpeg,实例化时需要传入ffmpeg的安装地址,例如linux下ffmpeg安装地址为/usr/local/ffmepg,那么实例化时需要传入/usr/local/ffmpeg/bin/ffmpeg
1:给视频添加文字
$ffmpeg = new FfmpegVideo();
$ffmpeg ->titleWater(
'XXX',//原视频
'XXX',//处理后保存视频
'XXX',//文字
[
'x' => 30,//水平距离
'y' => 30,//垂直距离
'fontsize' => 20,//文字大小
'fontcolor' => 'red',//文字颜色
'shadowy' => 2,//文字阴影
],
200,//每秒移动步长
2//文字出现时间(秒)
);
2:将视频设为静音
$ffmpeg = new FfmpegVideo();
$ffmpeg->audioMute(
'XXX',//原视频
'XXX',//处理后保存视频
);
3:视频裁剪
$ffmpeg = new FfmpegVideo();
$ffmpeg->clipVideo(
'XXX',//原视频
'XXX',//处理后保存视频
0,//裁剪开始时间
10//裁剪时长
);
4:视频拼接
$ffmpeg = new FfmpegVideo();
$ffmpeg->concatVideo(
['XXX', 'XXX'],//需要拼接的视频
'XXX',//处理后保存视频
);
5:将音频合并到视频中
$ffmpeg = new FfmpegVideo();
$ffmpeg->mergeVideoAudio(
'XXX',//视频
'XXX',//音频
'XXX',//处理后保存视频
0//音频插入视频延时时间(秒)
);
6:获取视频信息(长,宽,时长)
$ffmpeg = new FfmpegVideo();
$ffmpeg->getAttributes(
'XXX',//视频
);
其他方法可查看demo
|