mirror of
https://github.com/nonoo/kappanhang.git
synced 2026-01-11 03:09:59 +01:00
Deinit default audio output
This commit is contained in:
parent
eed09e0956
commit
e1ef8cd31f
|
|
@ -43,15 +43,19 @@ type audioStruct struct {
|
|||
|
||||
var audio audioStruct
|
||||
|
||||
func (a *audioStruct) defaultSoundCardStreamDeinit() {
|
||||
_ = a.defaultSoundCardStream.Drain()
|
||||
a.defaultSoundCardStream.Free()
|
||||
a.defaultSoundCardStream = nil
|
||||
}
|
||||
|
||||
func (a *audioStruct) togglePlaybackToDefaultSoundcard() {
|
||||
if a.defaultSoundCardStream == nil {
|
||||
log.Print("turned on audio playback")
|
||||
ss := pulse.SampleSpec{Format: pulse.SAMPLE_S16LE, Rate: 48000, Channels: 1}
|
||||
a.defaultSoundCardStream, _ = pulse.Playback("kappanhang", a.devName, &ss)
|
||||
} else {
|
||||
_ = a.defaultSoundCardStream.Drain()
|
||||
a.defaultSoundCardStream.Free()
|
||||
a.defaultSoundCardStream = nil
|
||||
a.defaultSoundCardStreamDeinit()
|
||||
log.Print("turned off audio playback")
|
||||
}
|
||||
}
|
||||
|
|
@ -89,6 +93,9 @@ func (a *audioStruct) playLoop(deinitNeededChan, deinitFinishedChan chan bool) {
|
|||
case <-a.togglePlaybackToDefaultSoundcardChan:
|
||||
a.togglePlaybackToDefaultSoundcard()
|
||||
case <-deinitNeededChan:
|
||||
if a.defaultSoundCardStream != nil {
|
||||
a.defaultSoundCardStreamDeinit()
|
||||
}
|
||||
deinitFinishedChan <- true
|
||||
return
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue