特定颜色的FFMPEG波形

Jer*_*emy 3 ffmpeg

试图从输入中获取波形,此输入是特定的金色#ad9557(173 / 255、149 / 255、87 / 255),并且具有透明的背景/或黑色(如果可能)。

我目前正在使用此脚本来生成它:

command = new String[]{
                "-i", mRapFile.getAbsolutePath(),
                "-filter_complex",
                "showwavespic",
                "-frames:v",
                "1",
                mWaveFormFile.getAbsolutePath()};
Run Code Online (Sandbox Code Playgroud)

波形在那里,但是现在是怪异的橙色。我该如何更改?

谢谢!

llo*_*gan 5

在此处输入图片说明

使用showwavespic过滤器中的colors选项:

ffmpeg -i input -filter_complex "aformat=channel_layouts=mono,showwavespic=colors=#ad9557" -frames:v 1 output.png
Run Code Online (Sandbox Code Playgroud)

我必须做一些假设,因为您没有包括命令中完整的控制台输出:

  • 您的选择ffmpeg可能太老了colors。请参阅FFmpeg下载页面,以获取指向Linux,OS X和Windows的最新已编译二进制文件的链接。

  • 我不知道您输入的通道布局。我添加了一种格式来制作单声道音频:否则,所有通道将使用不同的颜色,并且您必须为每个通道指定颜色。默认是red|green|blue|yellow|orange|lime|pink|magenta|brown