簡體   English   中英

如何使用pygame midi發送NRPN消息

[英]How to send NRPN messages with pygame midi

我正在編寫一個程序,該程序將從只能發送cc的設備讀取傳入的cc消息,並將其作為nrpn消息發送到另一設備。 我知道如何從pygame發送cc消息,但我無法確定如何發送nrpn的消息。 我看了看Vriareon代碼,我什至沒有看到它甚至可以訪問midi。 誰能舉一個例子說明如何做到這一點?

謝謝!

NRPN消息 CC消息。

但是,NRPN號碼與CC號碼不同。 MIDI規范說:

控制器編號6(數據輸入),與控制器編號96(數據遞增),97(數據遞減),98(非注冊參數編號LSB),99(非注冊參數編號MSB),100(注冊參數編號) LSB)和101(注冊參數號MSB)擴展了可通過MIDI使用的控制器的數量。 通過首先使用控制器98和99或100和101選擇要編輯的參數編號,然后使用控制器編號6、96或97調整該參數的數據值,來傳輸參數數據。

要更改音量(7)之類的控制器,您將發送一條消息:

B0 07 xx

要更改NRPN,請先選擇NRPN:

B0 63 mm
B0 62 ll

然后使用數據輸入控制器更改當前選擇的NRPN:

B0 06 mm
B0 26 ll  (optional, for 14-bit values)

因此可以將NRPN 0:1設置為值42:

self.midi_out.write_short(0xb0, 0x63, 0)
self.midi_out.write_short(0xb0, 0x62, 1)
self.midi_out.write_short(0xb0, 0x06, 42)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM