图片类打标工具

直接上传图片添加水印即可

音视频类打标工具

直接通过ffmpeg进行打标

ffmpeg下载地址为:https://ffmpeg.org/download.html#build-windows

使用 drawtext 滤镜为视频添加文字水印

使用 FFmpeg 的 drawtext 滤镜可以轻松地为视频添加文字水印。这个滤镜提供了丰富的选项,可以让你自定义文字内容、字体、大小、颜色和位置。


1. 字体和边框

如果你想指定特定字体或为文字添加描边,可以使用以下参数:

  • fontfile='/path/to/your/font.ttf':指定字体文件。你需要提供 .ttf.otf 字体的完整路径。如果字体文件和 FFmpeg 命令在同一目录下,可以直接写文件名。

  • bordercolor=black:borderw=1:为文字添加黑色边框,宽度为 1 像素。

例如:

Bash

ffmpeg -i input.mp4 -vf "drawtext=text='AI生成':x=10:y=10:fontsize=24:fontcolor=white:fontfile='C\:/Windows/Fonts/simhei.ttf':bordercolor=black:borderw=1" output.mp4

2. 文本位置

除了左上角,你还可以将文字放置在其他位置。drawtext 滤镜支持一些表达式来计算位置:

  • 右上角: x=w-tw-10:y=10w 是视频宽度,tw 是文本宽度)

  • 左下角: x=10:y=h-th-10h 是视频高度,th 是文本高度)

  • 右下角: x=w-tw-10:y=h-th-10

  • 居中: x=(w-tw)/2:y=(h-th)/2

3. 添加透明度

你可以通过 fontcolor 参数来设置文字的透明度。例如,使用带透明度的十六进制颜色码:

  • fontcolor=#FFFFFF@0.8@ 后面跟着的数值是透明度,0 为完全透明,1 为完全不透明。0.8 表示 80% 的不透明度。

通过这些参数的组合,你可以创建出满足你各种需求的文字水印。


为音频添加水印

为音频添加水印,通常是指在音频中叠加一段声音或背景音,使其成为新的混音文件。这与视频水印不同,视频水印通常是视觉上的叠加,而音频水印则是听觉上的混合。

在 FFmpeg 中,可以使用 amix(音频混合)滤镜来实现这个效果。


基础命令

以下是使用 amix 滤镜为音频文件添加水印的基础命令:

Bash

ffmpeg -i input.mp3 -i watermark.mp3 -filter_complex "amix=inputs=2:duration=first:dropout_transition=0" output.mp3

命令详解

  • -i input.mp3:这是你的原始音频文件。

  • -i watermark.mp3:这是你的水印音频文件。例如,你可以使用一段简短的口播、音乐片段或音效作为水印。

  • -filter_complex "...":这是用于应用复杂滤镜的参数。

  • amix=...:这是核心的音频混合滤镜。

    • inputs=2:告诉 FFmpeg 你有两个输入文件需要混合。

    • duration=first:设定输出文件的时长和第一个输入文件(input.mp3)的时长相同。这意味着当原始音频结束时,混合过程也会停止。

    • dropout_transition=0:这个参数用于处理当某个输入流结束时,混合如何过渡。设置为 0 可以避免音频突然中断,使得过渡更平滑。

  • output.mp3:这是混合后的新音频文件。

进阶技巧

1. 调整音量

如果你想要调整水印音频的音量,可以使用 volume 滤镜,并将其与 amix 结合使用。这通常用于将水印音频的声音调低,使其不影响原始音频的主体内容。

Bash

ffmpeg -i input.mp3 -i watermark.mp3 -filter_complex "[1:a]volume=0.2[a1];[0:a][a1]amix=inputs=2:duration=first:dropout_transition=0" output.mp3
  • [1:a]volume=0.2[a1]

    • [1:a] 引用第二个输入文件(即水印音频)的音频流。

    • volume=0.2 将水印音频的音量降低到原始音量的 20%。

    • [a1] 是一个标签,用于将调整音量后的音频流传递给下一个滤镜。

  • [0:a][a1]amix=...:将第一个输入文件([0:a])和调整音量后的水印音频流([a1])进行混合。

2. 循环水印

如果你的水印音频很短,但你希望它在整个原始音频中重复出现,可以使用 aloop 滤镜。

Bash

ffmpeg -i input.mp3 -i watermark.mp3 -filter_complex "[1:a]aloop=loop=-1:size=2e3[a1];[0:a][a1]amix=inputs=2:duration=first:dropout_transition=0" output.mp3
  • [1:a]aloop=loop=-1:size=2e3[a1]

    • loop=-1 表示无限循环。

    • size=2e3 是一个缓冲大小,通常设置为 2e3 就足够了,可以避免缓冲问题。

  • 这样设置后,水印音频会一直循环播放,直到原始音频结束。

Logo

一座年轻的奋斗人之城,一个温馨的开发者之家。在这里,代码改变人生,开发创造未来!

更多推荐