You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In https://github.com/yobert/alsa/blob/master/device.go#L107, the os.OpenFile call does not have a syscall.O_NONBLOCK flag. I suspect this is causing the beep example on my pure ALSA setup to block. (I've tested and nailed it down to the Open() method). This does not happen with PulseAudio.
Ah! Yeah! Good idea. Though we might need to expose the behavior as an argument to the function, because from what I'm reading this might have a lot to do with which driver your sound card uses. Some of them only support one thing using it at a time, which means the blocking behavior might be more correct (at least in the POSIX-ey sense.)
It does seem pedantic though to block until the sound becomes free. I wouldn't really want some queued up HONK to happen after stopping my music player.
The issue
In https://github.com/yobert/alsa/blob/master/device.go#L107, the
os.OpenFile
call does not have asyscall.O_NONBLOCK
flag. I suspect this is causing thebeep
example on my pure ALSA setup to block. (I've tested and nailed it down to theOpen()
method). This does not happen with PulseAudio.Proposal:
Add
syscall.O_NONBLOCK
like so:The text was updated successfully, but these errors were encountered: