2015-06-05 23 views
0

ALSA MIDI音序器API定義了snd_seq_queue_status_get_tick_time,它允許獲取正在運行的MIDI隊列的當前基於節奏的時間。如何在沒有輪詢的情況下從ALSA MIDI隊列獲取時間事件?

我可以定期查詢該信息,但覺得這將是清潔劑從隊列接收時間事件,無論是節奏基於與否,基於回調將盡可能多的罰款。

是否有通知的MIDI隊列ALSA音序器,並定期輪詢沒有時間事件的方法嗎?

- 編輯 -

當我說「輪詢」,我的意思是使用SIGALRM信號處理器和一個足夠小的分辨率(1/50秒)的定時器。

回答

1

如果你想在一個特定的時間通知,安排一個事件當時被髮送給自己。

例如,arecordmidi這是否其節拍器圖案的再現同步。

+0

我後來想起來了,但就怕水淹的隊列,作爲一個用例是用於顯示當前播放位置(另一個是用於播放節拍器,而這一次是不太可能最終成爲淹沒隊列) 。我喜歡你的答案,但會在選擇它作爲我最喜歡的答案之前等待。 – Hibou57

+0

最後似乎沒有另一種方式。 – Hibou57

相關問題