利用PHP+ffmpeg进行合并视频并增加转场特效
-
安装ffmpeg
-
进行执行一下命令 增加特效
$str = "/usr/ffmpeg/ffmpeg -i " . 文件1. " -i " . 文件2. " -i " . 文件3 . " -i " . 文件4 . " -i " . 文件5 . " -filter_complex '[0][1]xfade=transition=hlslice:duration=1:offset=2[V01]; [V01][2]xfade=transition=radial:duration=1:offset=4[V02]; [V02][3]xfade=transition=dissolve:duration=1:offset=6[V03]; [V03][4]xfade=transition=vuslice:duration=1:offset=8,format=yuv420p[video]; [0:a][1:a]acrossfade=d=0.5:c1=tri:c2=tri[A01]; [A01][2:a]acrossfade=d=0.5:c1=tri:c2=tri[A02]; [A02][3:a]acrossfade=d=0.5:c1=tri:c2=tri[A03]; [A03][4:a]acrossfade=d=0.5:c1=tri:c2=tri[audio]' -map '[video]' -map '[audio]' " .合并完成后的新文件名称; system($str);
-
进行增加背景音乐 执行以下命令
$zhstr = '/usr/ffmpeg/ffmpeg -i ' . 视频路径 . ' -ss ' . 视频时长参照一下格式(00:00:05) . ' -i ' . 音频路径 . ' -c copy -shortest ' . 合并完成后视频路径; system($zhstr);
这里边提到的路径都是视频的绝对路径