如何使用ffmpeg在多个区域添加水印?

时间:2018-03-06 10:33:31

标签: php laravel ffmpeg video-watermarking

我正在使用laravel框架并使用ffmpeg php库。实际上我做了近70%的工作。但我遇到的问题是在视频的多个区域显示水印。我在左上角做了水印,该视频的运行非常精细。但我想在左上角,左下角,右下角添加水印。我已将此代码用于左上角水印(视频): -

$inputVideo = public_path('input/airplane_flight_airport_panorama_1080.mp4');
$outputVideo = public_path('uploads/output.mp4');
$watermark = public_path('input/watermark.jpg');

$wmarkvideo = "ffmpeg -i ".$inputVideo." -i ".$watermark." -filter_complex ". '"overlay=x=(main_w-overlay_w):y=(main_h-overlay_h)/(main_h-overlay_h)"'." ".$outputVideo;
exec($wmarkvideo );

请帮助我如何在这些区域的左上角,左下角,右下角添加水印。在此先感谢:)

1 个答案:

答案 0 :(得分:1)

这是您将用于多个水印的ffmpeg命令

ffmpeg -i inputVideo -i watermark-tr -i watermark-tl -i watermark-br -i watermark-bl -i watermark-c
       -filter_complex "[0][1]overlay=x=W-w:y=0[tr];
                        [tr][2]overlay=x=0:y=0[tl];
                        [tl][3]overlay=x=W-w:y=H-h[br];
                        [br][4]overlay=x=0:y=H-h[bl];
                        [bl][5]overlay=x=(W-w)/2:y=(H-h)/2"  outputfile

tr =右上角; tl =左上角; br =右下角; bl = bottomleft

还有中心,

{{1}}