向 FFmpeg 波形添加没有背景的线条

问题描述 投票:0回答:1

我正在尝试编写一个 ffmpeg 命令来从音频生成波形。我已经成功生成了波形,但在尝试添加一条线以使静音区域不为空白时失败了。

当前命令是:

 -filter_complex "[0:a]aformat=channel_layouts=mono,compand=attacks=0:points=-80/-900|-45/-15|-27/-9|0/-7|20/-7:gain=15,showwavespic=s=180x26:colors=#7c84cc[fg];color=s=180x26:color=#303030[bg];[bg][fg]overlay=format=auto,drawbox=x=(iw-w)/2:y=(ih-h)/2:w=iw:h=1:color=#7c84cc" -frames:v 1

我自己添加了一些调整来增强视觉吸引力,但我想要的是使用没有滤色器的抽屉。如果我尝试这样做,该线会在静音部分消失。

我也尝试过使用透明图像作为背景,但也失败了。

在解决这个问题时,我非常依赖这个问题:
使用 ffmpeg 生成波形

ffmpeg audiowaveform
1个回答
0
投票

一种选择是使用

gradients
滤镜来添加变化的颜色渐变。

例如

ffmpeg -i input.mp3 -filter_complex "gradients=s=vga:c0=303030:c1=7c84cc:x0=0:x1=0:y0=0:y1=640 [bg];[0:a]showwaves=mode=p2p:s=vga:split_channels=1:scale=lin:draw=scale:colors=Yellow|White[v];[bg][v]overlay=shortest=1:format=rgb:alpha=premultiplied [vid]" -map "[vid]" -map 0:a  -vsync vfr -preset ultrafast -f matroska - | ffplay -autoexit -

还有一个

speed
参数来调整渐变旋转。

© www.soinside.com 2019 - 2024. All rights reserved.