高畫質立體聲千周測試訊號的生成

2021-09-24 23:35:45 字數 2034 閱讀 2074

用於生成符合csmpte 2006-001的千周測試訊號

在c-free 4.0 mingw 2.95上編譯通過

/* 這是乙個簡單的訊號發生器,用於產生符合csmpte標準的千周訊號 */

/* 左聲道:1khz,每間隔3秒間斷約0.4秒,即出現2.6秒,靜音0.4秒 */

/* 右聲道:1khz,連續 */

/* 輸出格式:pcm_s16le,16位元,低位在前,高位在後 */

/* c-free 4.0 mingw 2.95 */

#include #include #define sample_rate 48000

#define len 60.0

#define gate_off (0.4 * sample_rate)

#define gate_loop_len (3 * sample_rate)

#define gate_on (gate_loop_len - gate_off)

#define false 0

#define true 1

#define int16 1

#define gain_l_db -20

#define gain_r_db -20

short sp_to_short_word(double sp);

double db_to_decimal(double x);

int cnt_max = (double)len * sample_rate;

const char *path = "d:\\csmpte.raw";

const double pi = 3.1415926535897932384626433832795;

const double left_freq = 1000;

const double right_freq = 1000;

const double left_gain = 0.1;

const double right_gain = 0.1;

int main()

printf("[debug] cnt_max = %ld\n", cnt_max);

printf("[debug] len = %f\n", len);

printf("[debug] left_freq = %f\n", left_freq);

printf("[debug] right_freq = %f\n", right_freq);

printf("[debug] left_gain = %f\n", left_gain);

printf("[debug] right_gain = %f\n", right_gain);

printf("[debug] cos 30deg = %.16f\n", cos(pi / 6));

printf("[debug] cos 45deg = %.16f\n", cos(pi / 4));

printf("[debug] cos 60deg = %.16f\n", cos(pi / 3));

printf("[debug] sizeof(signed short) = %d\n", sizeof(signed short));

printf("[debug] sizeof(signed int) = %d\n", sizeof(signed int));

printf("[debug] writing out samples...\n");

for(sp_cnt = 0; sp_cnt < cnt_max; sp_cnt++)

/* for */

printf("[debug] bytes_cnt = %ld\n", bytes_cnt);

fclose(fp1);

} /* main */

short sp_to_short_word(double sp)

double db_to_decimal(double x)

/*long sp_to_int_word(double sp)

*/

左聲道,右聲道和立體聲

2 音效卡所支援的聲道數是衡量音效卡檔次的重要指標之一,從單聲道到最新的環繞立體聲,下面一一詳細介紹 1 單聲道 單聲道是比較原始的聲音複製形式,早期的音效卡採用的比較普遍。當通過兩個揚聲器回放單聲道資訊的時候,我們可以明顯感覺到聲音是從兩個音箱中間傳遞到我們耳朵裡的。這種缺乏位置感的錄製方式用現在...

如何實現音訊合成立體聲錄製?

自anychat r4086版本開始,anychat支援音訊合成立體聲錄製,增加錄製標誌常量 var brac record flags stereo 0x00000200 錄製音訊時,將其它人的聲音混合為立體聲後錄製 複製 呼叫 為 var flags brac record flags vide...

HomePod 幫在 Mac 上實現立體聲

隨著 homepod mini 的發售,實現 homepod 立體聲的門檻也相對降低。相信在這樣 真香 的 驅動下,會有越來越多的人體驗到蘋果計算音訊和 homekit 智慧型家居的魅力。然而,蘋果似乎忘記了一件事情 自從 2017 年 homepod 發布到今天,已經快 4 年的時間過去了,官方依...