音频滤镜参数介绍

音频滤镜

当你配置编译FFmpeg时,先采用--disable-filters可以禁止所有的滤镜,然后显式配置想要支持的滤镜。

下面是当前可用的音频滤镜

adelay

延迟一个或者多个音频通道

它接受如下选项:

  • delays

    参数是以|分隔的列表字符串,分别用于指明对应各个通道延迟的微秒(milliseconds)数。应提供至少一个大于0的延迟。未使用的延迟将被静默忽略。如果延迟值数量小于通道数量,则剩余通道不会被延迟。

adelay例子
  • 第一通道延迟1.5秒,第三通道0.5秒(其它通道均不延迟变化)

    adelay=1500|0|500

aecho

重复应用于音频输入(回声效果)滤镜

回声反射声音,可以自然发生在山区大型建筑(有时)谈话时,或者大叫时,数字回声效果模拟这种行为,通常用来帮助填补一个乐器或声音的(回声)。原始信号和发射信号的时差就是delay(延迟),而反射信号的响度是decay(衰减)。多个回声可以有不同的延迟和衰减。

要描述一个回声效果需要如下的参数值(注意下面的参数之间用分隔):

  • in_gain

    设置输入获得的反射信号强度,默认0.6.

  • out_gain

    设置输出增加反射信号强度,默认0.3.

  • delays

    一个由|分隔原始信号和反射作用的指代延迟时间的字符串列表,单位是微秒(milliseconds)。每个延迟允许范围(0-90000.0),默认为1000

  • decays

    设置一个由|分隔的反映信号响度衰减值的列表,每个衰减值范围是(0-1.0),默认为0.5.

aecho例子
  • 让一个声音听起来像两倍

    aecho=0.8:0.88:60:0.4

  • 如果延迟十分短,那听起来像一个机器人(金属)音乐

    aecho=0.8:0.88:6:0.4

  • 一个十分长延迟(回声)的声音好像在一个空旷山谷里听露天音乐会。

    aecho=0.8:0.9:1000:0.3

  • 同上,但不只一座山的效果(多次反射回音)

    aecho=0.8:0.9:1000|1800:0.3|0.25

aeval

根据指定的表达式修改(改变、变化)一个音频信号

这个滤镜接受一个或者多个表达式(对每个通道),这些表达式计算用于相应的音频信号。

它接受下面的参数:

  • exprs

    设置一个用|分隔的对应于各个通道的表达式。如果输入通道数量比表达式数量大,则最后指定的表达式用于其余通道

  • channel_layout, c

    设置输出通道布局。如果不指定,通道布局采用通道布局数值表达式。如果设置为same则采用输入通道相同的布局(这是默认值)

帧各通道的计算表达式中,下面的项目被允许。:

  • ch

    当前表达式对应通道索引 expression

  • n

    评估样本数量,从0开始

  • s

    采样率

  • t

    一秒内采样点数量。
    nb_in_channels
    nb_out_channels

    输入和输出通道索引
    val(CH)

    the value of input channel with number CH

注意这个滤镜比较慢,要快速处理你可能需要dedicated滤镜

aeval例子
  • 一半音量

    aeval=val(ch)/2:c=same

  • 转化相位的第二个通道::

    aeval=val(0)|-val(1)

afade

对输入音频应用淡入淡出效果

下面是跟上来的滤镜参数:

  • type, t

    指定滤镜效果,可以是fade-in,或者fade-out

  • start_sample, ss

    指定的数量开始样品开始应用褪色的效果。默认是0S

  • nb_samples, ns

    指定实现淡入/淡出效果的样品数量,最终淡入效果输出的音频音量同于输入,而淡出将静音。默认音频采样率为44100。

  • start_time, st

    指定淡入/淡出效果开始的时间,默认为0。这个值必须被以持续时间语法来描述。它可以用来替代start_sample选项。

  • duration, d

    指定淡化效果持续时间。以持续时间语法来描述。在效果的最后,淡入使得音量同于输入音频,淡出则静音。默认持续时间由nb_samples定义。 这里设置了就替代了nb_samples

  • curve

    设置曲线过渡衰减,接受下面的值:

    tri

      选择三角形,线性斜坡(默认)
    

    qsin

      选择正弦波
    

    hsin

      选择正弦波的一半 
    

    esin

      选择指数正弦 
    

    log

      选择对数 
    

    ipar

      选择倒抛物线 
    

    qua

      选择二次
    

    cub

      选择立方
    

    squ

      选择平方根 
    

    cbr

      选择立方根 
    

    par

      选择抛物线
    

    exp

      选择指数
    

    iqsin

      选择正弦波反季
    

    ihsin

      选择倒一半的正弦波
    

    dese

      选择双指数插值 
    

    desi

      选择双指数S弯曲
    
afade例子
  • 15秒的一个音频淡入

    afade=t=in:ss=0:d=15

  • 25秒的音频淡出

    afade=t=out:st=875:d=25

aformat

让输入音频约束成为指定格式。该框架会采用最合适(少)的格式转换

它接受下面的参数:

  • sample_fmts

    一个用|分隔的列表,列出了采样格式

  • sample_rates

    一个用|分隔的列表,列出了采样率

  • channel_layouts

    一个用|分隔的列表指定通道布局.

    参考通道布局了解通道布局相关语法。

如果一个参数被省略,所有的值都是允许的。

强制输出为8位 或者16位 立体声

aformat=sample_fmts=u8|s16:channel_layouts=stereo

allpass

应用一个两极(two-pole)全通(all-pass)滤波器的中心频率(Hz)的frequency,和filter-width值width。一个allpass滤镜可以改变音频的频率相位关系而不改变其频率振幅关系。(可以实现移相)

滤镜接受下面的选项:

  • frequency, f

    设置频率,单位Hz.

  • width_type

    设置带宽滤波器的带宽单位,有下面的类型

    h

      Hz 
    

    q

      Q-Factor 
    

    o

      octave——8度 音阶
    

    s

      slope 
    
  • width, w

    指定一个过滤器的带宽width_type单位

amerge

合并两个或两个以上的音频流到一个多通道流

滤镜接受下面的选项:

  • inputs

    设置输入数量,默认为2

如果输入的通道布局是不相交的,因此可兼容,输出将设置相应的通道布局和渠道,并在必要时重新排序。如果输入的通道布局是不可分离的,则输出将会是第一个输入的所有通道,然后第二个输入的所有通道,在这种顺序下,输出的通道布局将默认通道数设为总数。

例如:如果第一个输入是2.1FL+FR+LF)和第二个输入为FC+BL+BR,则输出是5.1通道布局,并且按:a1,a2,b1,a3,b2,b3设置输出通道布局(这里a1是第一个输入的第一个通道FL,b1是第二个输入的第一个通道FC

在另外的应用中,如果两个输入都是立体声,则输出会默认为:a1,a2,b1,b2,即输出流显示为一个4通道音频流,这可能是一个非预期的值。

所有的输入必须有相同的采样率和格式。

如果输入没有相同的持续时间,输出将在最短时间停止。

amerge例子
  • 合并两个单声道为立体声

    amovie=left.wav [l] ; amovie=right.mp3 [r] ; [l] [r] amerge

  • 合并多个到1个视频和6个音频流

    ffmpeg -i input.mkv -filter_complex "[0:1][0:2][0:3][0:4][0:5][0:6] amerge=inputs=6" -c:a pcm_s16le output.mkv

amix

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值