b484. 音色(三)
標籤 : 聲音處理
通過比率 : 8人/9人 ( 89% ) [非即時]
評分方式:
Tolerant

最近更新 : 2015-08-27 17:01

內容

 

要讓聲音稍有變化,除了調整波形、調整振幅,還有泛音

音叉振動時,是純粹的sine wave,頻率是定值,沒有泛音。

樂器振動時,不是純粹的sine wave。振動波在樂器當中來回反射,影響原本的sine wave,最後形成駐波。除了原本的sine wave,還同時產生了兩倍頻率、三倍頻率、四倍頻率、……的sine wave。這些多餘的波稱作泛音。泛音與原本的波,整個稱作諧音。

科學家使用函數來描述諧音的組成。橫軸是頻率,縱軸是振幅(比例),每一根針都代表一個sine wave。

大家經常使用這個函數圖形,科學家稱作頻譜(frequency spectrum)



使用多個sine wave進行合聲,就達成了泛音的效果。


每種樂器的諧波組成都不同,這決定了樂器的聲音特性。

給你一個音名,請你根據給定的頻譜,製作一秒的聲音。基本波形是sine wave,振幅是32767。

輸入說明

一個音名:三個字元或者兩個字元。第一個字元是ABCDEFG其中一個。第二個字元是#b其中一個,第二個字元可有可無。第三個字元是1234567其中一個。

一個頻譜:六個浮點數 a1 a2 a3 a4 a5 a6,代表一倍波到六倍波的振幅比例。a1 總是 1.0。合聲時,第 i 個波的振幅倍率,設定為 ai/(a1+a2+a3+a4+a5+a6);一倍振幅定為32767。

輸出說明

一段聲音:兩個整數 R N (R = N = 8000),是取樣頻率與訊號數量。下一行有 N 個整數,是訊號數值 (-32768 ~ +32767)。

 

範例輸入 #1
C#4
1.0 0.6 0.4 0.3 0.25 0
範例輸出 #1
8000 8000
0 14945 22716 21556 15721 11081 10119   (後面省略)
測資資訊:
記憶體限制: 64 MB
提示 :

1. 有興趣的讀者可以繼續研究偏差音

標籤:
聲音處理
出處:
[管理者: DJWS (...) ]

本題狀況 本題討論 排行

編號 身分 題目 主題 人氣 發表日期
沒有發現任何「解題報告」