文本閱讀:
18第1章正弦、幅度與頻率
新的軌跡變化。
可能會有兩個消息同時到達line~,或是兩者相互之間的時間間隔非常近,以至于在此期間沒有任何DSP計算發(fā)生;在這種情況下,較早達到的消息不起任何作用,因為line~來不及跟隨第1條消息改變輸出,當前的輸出(沒有改變)就被用作第2條消息所指定的線段的起點了。這條規(guī)則有一個例外:如果line~接收到了一個值為0的時間,那么其輸出值將會立即被設置為新的數(shù)值,接下來的線段也將會以新的數(shù)值為起點;因此,發(fā)送兩對參數(shù),第1對的時間數(shù)值為0,而第2對的時間數(shù)值為非零,這樣就能分別指明line~輸出線段的起點值和終點值。
對line~右輸入口的處理方式并非是Pd對象的慣常處理方式,因為它會丟棄舊值;只有單一數(shù)值的消息--比如"0.1",總會等價于一對數(shù)值"0.10"。幾乎所有其他對象都會為右輸入口保留原先的數(shù)值,而不是將其重置為0。
示例A04.line2.pd用圖形展示了line~對象的輸出。通過使用多種消息塊,你就可以重建出如圖1.6所示的效果。
1.9.4大三和弦
示例A05.output.subpatch.pd中的有效部分如圖1.12c所示,這里有3個正弦,其頻率比為4:5:6,因此圖中下方2個正弦的音程間隔為大三度,上方2個正弦之間為小三度,頂端和底端正弦之間為五度。最低正弦的頻率為440Hz,其音高等于中央C上方的A,即MIDI69。
其他兩個正弦的音高分別近似為上方4個半音和7個半音。3個正弦具有一樣的幅度。
本例中使用了一個名為output~的新對象進行幅度控制。它不是Pd內置的對象,它本身是一個Pd音色,以文件形式存在,名為"output.pd"(你可以打開該對象塊的屬性菜單并選擇"open"查看其內部結構)。它有2個控制,一個以dB為單位進行幅度控制(100意味著"單位增益"),另一個是"靜音"按鈕。在你設置輸出電平時會自動打開Pd的音頻處理--一般來說這可能不是最好的行為方式,但對于這些示例文件來說它是合適的。將一個Pd音色作為一個對象塊嵌入到另外一個音色中的運行機制將在章節(jié)4.7中討論。
1.9.5在頻率和音高之間進行轉換
示例A06.frequency.pd(圖1.13)展示了將音高轉換為頻率單位的Pd對象(mtof,意為"MIDI到頻率"),以及相反的轉換ftom。我們還會介紹另外兩個對象類,send和receive。
mtof,ftom】:根據(jù)音高/頻率轉換公式(第5頁)進行MIDI音高與頻率單位之間的
下載工具
意見反饋
捐助平臺