mirror of
https://github.com/onyx-and-iris/voicemeeter.git
synced 2026-04-07 00:13:30 +00:00
package module moved into root of repository.
example in readme updated. level pooler implemented, runs in its own goroutine. Remote type now exported observers example updated.
This commit is contained in:
@@ -2,37 +2,45 @@ package main
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"strings"
|
||||
"time"
|
||||
|
||||
"github.com/onyx-and-iris/voicemeeter-api-go/voicemeeter"
|
||||
"github.com/onyx-and-iris/voicemeeter-api-go"
|
||||
)
|
||||
|
||||
type observer struct {
|
||||
i int
|
||||
vm *voicemeeter.Remote
|
||||
}
|
||||
|
||||
func (o observer) OnUpdate(subject string) {
|
||||
fmt.Println(o.i, subject)
|
||||
if strings.Compare(subject, "pdirty") == 0 {
|
||||
fmt.Println("pdirty!")
|
||||
}
|
||||
if strings.Compare(subject, "mdirty") == 0 {
|
||||
fmt.Println("mdirty!")
|
||||
}
|
||||
if strings.Compare(subject, "ldirty") == 0 {
|
||||
fmt.Printf("%v %v %v %v %v %v %v %v\n",
|
||||
o.vm.Bus[0].Levels().IsDirty(),
|
||||
o.vm.Bus[1].Levels().IsDirty(),
|
||||
o.vm.Bus[2].Levels().IsDirty(),
|
||||
o.vm.Bus[3].Levels().IsDirty(),
|
||||
o.vm.Bus[4].Levels().IsDirty(),
|
||||
o.vm.Bus[5].Levels().IsDirty(),
|
||||
o.vm.Bus[6].Levels().IsDirty(),
|
||||
o.vm.Bus[7].Levels().IsDirty(),
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
func main() {
|
||||
vmRem := voicemeeter.GetRemote("banana")
|
||||
vmRem := voicemeeter.GetRemote("potato")
|
||||
vmRem.Login()
|
||||
|
||||
o := observer{1}
|
||||
o2 := observer{2}
|
||||
o3 := observer{3}
|
||||
o4 := observer{4}
|
||||
o := observer{vmRem}
|
||||
vmRem.Register(o)
|
||||
vmRem.Register(o2)
|
||||
vmRem.Register(o3)
|
||||
vmRem.Register(o4)
|
||||
|
||||
time.Sleep(5 * time.Second)
|
||||
|
||||
vmRem.Deregister(o2)
|
||||
|
||||
time.Sleep(5 * time.Second)
|
||||
time.Sleep(30 * time.Second)
|
||||
vmRem.Deregister(o)
|
||||
|
||||
vmRem.Logout()
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user