ALSA MIDI 音序器 API 定义snd_seq_queue_status_get_tick_time
,它允许获取正在运行的 MIDI 队列的基于当前速度的时间。
我可以定期轮询此信息,但觉得从队列中接收时间事件会更干净,无论是否基于速度,基于回调都可以。
有没有办法通过 ALSA 音序器定期且不轮询地通知 MIDI 队列的时间事件?
— 编辑 —</p>
当我说“轮询”时,我的意思是使用SIGALRM
信号处理程序和足够小分辨率(1/50 秒)的计时器。
ALSA MIDI 音序器 API 定义snd_seq_queue_status_get_tick_time
,它允许获取正在运行的 MIDI 队列的基于当前速度的时间。
我可以定期轮询此信息,但觉得从队列中接收时间事件会更干净,无论是否基于速度,基于回调都可以。
有没有办法通过 ALSA 音序器定期且不轮询地通知 MIDI 队列的时间事件?
— 编辑 —</p>
当我说“轮询”时,我的意思是使用SIGALRM
信号处理程序和足够小分辨率(1/50 秒)的计时器。
如果您想在特定时间收到通知,请安排在该时间发送给您自己的事件。
例如,arecordmidi这样做是为了同步其节拍器模式的播放。