在右下角添加带有光谱的水印

在右下角添加带有光谱的水印

输出图像应如下所示:

我的命令是:

String[] command1211 = {"-i", inputPath_audio.mp3,
                "-preset", "ultrafast",
                "-filter_complex",
                "[0:a]showspectrum=s=1280x720,format=yuv420p[v]",
                "-map", "[v]", "-map", "0:a", "-c:v", "libx264", "-c:a",
                "copy", filePath.mp4};

我想用这个命令在右下角添加水印。

这是我的关于水印的命令:

“[1]比例=70:70 [tmp];[0][tmp]覆盖=main_w-overlay_w-10:main_h- overlay_h-10”

我通过以下查询实现了它:

String[] command12111 = {
    "-i", inputPath_audio,
    "-i",imagepath.getAbsolutePath(),
    "-preset", "ultrafast",
    "-filter_complex",
    "[0:a]showspectrum=s=1280x720[spec]; 
    [1]scale=70:70[watermark];[spec][watermark]overlay=main_w- 
    overlay_w-10:main_h-overlay_h-10[output]",
    "-map", "[output]", "-map", "0:a", "-c:v", "libx264",  
    "-c:a",
    "copy", filePath
};

答案1

您的原始命令缺少覆盖水印所需的元素:

  1. 水印图像作为输入
  2. 叠加滤镜添加水印

因此,您需要另一个-i用于水印输入的过滤器,以及一个overlay将光谱过滤器输出与图像输入连接起来的过滤器。

ffmpeg \
    -i audio_path \
    -i image_path \
    -filter_complex \
    "[0:a]showspectrum=s=1280x720[spec];
    [1]scale=70:70[watermark];
    [spec][watermark]overlay=main_w-overlay_w-10:main_h-overlay_h-10[output]
    " \
    -map "[output]" -map 0:a \
    output.mp4

这里,需要注意滤波器输入的标签(两个输入分别为 0 和 1)和输出(specwatermark、……)。您可以使用它们来连接不同的滤波器。

相关内容