Audio 混音演算法

2021-08-02 05:17:36 字數 1077 閱讀 7688

1、  輸入兩路16bit 音訊,分別0.5倍增益後混音。

2、  左聲道audio 1sample 乘以 0.5 倍增益,右聲道 audio 1 sample 乘以 0.5倍增益

左聲道audio 2 sample 乘以 0.5 倍增益,右聲道 audio 2 sample 乘以 0.5倍增益

3、  控制每個經過增益處理的的sample值不超過 s16範圍(-32767 ,32767),因為增益可能是n倍,可能增益處理後超出s16範圍。

4、  output audio  左聲道sample =audio 1 增益後的左聲道sample + audio 2 增益後的左聲道sample

output audio  右聲道sample =audio 1 增益後的右聲道sample + audio 2 增益後的右聲道sample

5、  如果outputaudio > max(32767),則gain = max/output

如果output audio < min(-32767),則gain = min/output

其他 gain = 1;

6、  output audio sample乘以gain,得到混合後的sample值

樣例**

#define sample_size 4

#define sample_gain (2147483647.0f)

#define check_max_value(value) ((value > 32767) ? 32767 : value)

#define check_min_value(value) ((value < -32767) ? -32767 : value)

int mixaudio2(short* sourcedata1, short* sourcedata2, float fbackgroundgain, float fwordsgain, short *outputdata)

else

if (output>max)

if (outputif (f<1)

outputdata[iindex] = (short)output;

}return 1;

}

乙個新型的混音演算法

針對傳統經典的線性混音,路數多時音量變小的缺點 自創了乙個新的混音演算法,解決該問題,聲音不會忽大忽小,而且該方法還能一定程度抑制雜訊,突出人聲,能實時計算量小,專利已經受理。對於混音方法,網上和文獻上流傳許多方法。1.平均權重 2.隨幅值變化的權重 3.利用衰減因子緩慢規整 4.絕對值處理 5.a...

混音指南 第三章 學習混音

現在有兩種處理eq的方式 掃頻,揪出來乙個不好的頻段,壓下去 想象一下你需要的聲音,直接通過eq做出來 誠實地說,第一種是我用的。第一種就是碰運氣式的做法,做出什麼樣的聲音都是天時地利人和。第二種人有自己的混音觀念,知道自己想要什麼樣的聲音,並實現。我們可以不斷地對作品進行評價,找到問題所在,如 吊...

重寫 Audio 樣式

眾所周知,html5 已經可以很好的支援 audio 和 vedio 了,我們可以方便的在網頁新增多 控制項。然而,設計師總是與眾不同,修改 audio 預設樣式已成常態。一 audio 結構 123 45controls controls preload auto src jartto.ogg t...