Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Video 如何使用ffmpeg在视频中心添加透明水印?_Video_Ffmpeg_Watermark - Fatal编程技术网

Video 如何使用ffmpeg在视频中心添加透明水印?

Video 如何使用ffmpeg在视频中心添加透明水印?,video,ffmpeg,watermark,Video,Ffmpeg,Watermark,我目前正在使用以下命令: Top left corner ffmpeg –i inputvideo.avi -vf "movie=watermarklogo.png [watermark]; [in][watermark] overlay=10:10 [out]" outputvideo.flv Top right corner ffmpeg –i inputvideo.avi -vf "movie=watermarklogo.png [watermark]; [in][watermark]

我目前正在使用以下命令:

Top left corner
ffmpeg –i inputvideo.avi -vf "movie=watermarklogo.png [watermark]; [in][watermark] overlay=10:10 [out]" outputvideo.flv

Top right corner
ffmpeg –i inputvideo.avi -vf "movie=watermarklogo.png [watermark]; [in][watermark] overlay=main_w-overlay_w-10:10 [out]" outputvideo.flv

Bottom left corner
ffmpeg –i inputvideo.avi -vf "movie=watermarklogo.png [watermark]; [in][watermark] overlay=10:main_h-overlay_h-10 [out]" outputvideo.flv

Bottom right corner
ffmpeg –i inputvideo.avi -vf "movie=watermarklogo.png [watermark]; [in][watermark] overlay=(main_w-overlay_w-10)/2:(main_h-overlay_h-10)/2 [out]" outputvideo.flv

如何将水印放置在视频的中心?

使用过滤器在视频上添加水印/徽标图像的示例

居中的

或使用缩短覆盖选项:

overlay=(W-w)/2:(H-h)/2
左上角 这是一个简单的方法,因为默认情况下,如果没有提供覆盖选项,则将图像放置在左上角

此示例添加了5个像素的填充,因此图像不会接触边缘:

overlay=5:5
右上角 具有5个像素的填充:

overlay=main_w-overlay_w-5:5
overlay=main_w-overlay_w-5:main_h-overlay_h-5
overlay=5:main_h-overlay_h
或使用缩短的选项:

overlay=W-w-5:5
overlay=W-w-5:H-h-5
overlay=5:H-h-5
右下角 具有5个像素的填充:

overlay=main_w-overlay_w-5:5
overlay=main_w-overlay_w-5:main_h-overlay_h-5
overlay=5:main_h-overlay_h
或使用缩短的选项:

overlay=W-w-5:5
overlay=W-w-5:H-h-5
overlay=5:H-h-5
左下角 具有5个像素的填充:

overlay=main_w-overlay_w-5:5
overlay=main_w-overlay_w-5:main_h-overlay_h-5
overlay=5:main_h-overlay_h
或使用缩短的选项:

overlay=W-w-5:5
overlay=W-w-5:H-h-5
overlay=5:H-h-5
透明度/不透明度/alpha 使用和过滤器使水印50%透明的示例:

提高质量 在过滤器中使用
format=auto
选项可以使PNG水印看起来更好:

ffmpeg -i input.mp4 -i watermark.png -filter_complex "overlay=5:H-h-5:format=auto,format=yuv420p" -c:a copy output.mp4
请注意添加了过滤器(是的,与选项同名,但为独立过滤器),以将其重置为MP4输出所需的YUV 4:2:0。如果没有输出MP4,请删除
,format=yuv420p

与主视频相关的缩放水印 使用过滤器:

将徽标设置为主视频大小的10%(1/10)的示例:

ffmpeg -i input.mp4 -i watermark.png -filter_complex "[1][0]scale2ref=w=oh*mdar:h=ih*0.1[logo][video];[video][logo]overlay=5:H-h-5" -c:a copy output.mp4

右下角实际上是:ffmpeg–i inputvideo.avi-vf“movie=watermarklogo.png[watermark];[in][watermark]overlay=main_w-overlay_w-10:main_h-overlay_h-10[out]”输出视频。flv@mirza你能告诉我你把watemarklogo.png文件放在哪里了吗,因为我没有收到这样的文件或目录错误,所以应该与您从中执行命令的目录相同@Bshruti@HarishKumar将flv替换为mp4。我们如何将水印缩放为视频宽度的2/3并保持水印的比例?请帮忙我正在尝试使用FFMPEG版本n2.4.2在Android上运行此操作,我收到错误消息:没有这样的过滤器:'“叠加”,有什么想法吗?@LordNeckbeard驴的照片怎么了:D@AarifAli如果您不提供实际错误,我将无法提供帮助。