refactor: AudioSource is a func instead of single function interface

This avoids defining Processor altogether.
This commit is contained in:
5684185+vsariola@users.noreply.github.com
2024-11-02 19:50:20 +02:00
parent 3eb4d86d52
commit 2aa0aaee0c
4 changed files with 18 additions and 30 deletions

View File

@ -10,6 +10,7 @@ import (
"runtime/pprof"
"gioui.org/app"
"github.com/vsariola/sointu"
"github.com/vsariola/sointu/cmd"
"github.com/vsariola/sointu/oto"
"github.com/vsariola/sointu/tracker"
@ -61,8 +62,10 @@ func main() {
}
trackerUi := gioui.NewTracker(model)
processor := tracker.NewProcessor(player, midiContext, trackerUi)
audioCloser := audioContext.Play(processor)
audioCloser := audioContext.Play(func(buf sointu.AudioBuffer) error {
player.Process(buf, midiContext, trackerUi)
return nil
})
go func() {
trackerUi.Main()