rename
This commit is contained in:
parent
e7026ea0cd
commit
ed2552bbdd
@ -1,50 +0,0 @@
|
|||||||
package backend
|
|
||||||
|
|
||||||
import (
|
|
||||||
"github.com/tonychee7000/Arremi/consts"
|
|
||||||
midi "github.com/youpy/go-coremidi"
|
|
||||||
)
|
|
||||||
|
|
||||||
// MIDIDevice implies a Writer interface.
|
|
||||||
type MIDIDevice struct {
|
|
||||||
client midi.Client
|
|
||||||
source midi.Source
|
|
||||||
Signal chan midi.Packet
|
|
||||||
}
|
|
||||||
|
|
||||||
// NewMIDIDevice construction func
|
|
||||||
func NewMIDIDevice() (*MIDIDevice, error) {
|
|
||||||
var mididev = new(MIDIDevice)
|
|
||||||
err := mididev.Init()
|
|
||||||
return mididev, err
|
|
||||||
}
|
|
||||||
|
|
||||||
// Init the client and source
|
|
||||||
func (midiDev *MIDIDevice) Init() error {
|
|
||||||
var err error
|
|
||||||
|
|
||||||
midiDev.Signal = make(chan midi.Packet, 4096)
|
|
||||||
midiDev.client, err = midi.NewClient(consts.ClientName)
|
|
||||||
if err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
midiDev.source, err = midi.NewSource(midiDev.client, consts.SourceName)
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
func (midiDev *MIDIDevice) Write(p []byte) (int, error) {
|
|
||||||
var pack = midi.NewPacket(p, 0)
|
|
||||||
midiDev.Signal <- pack
|
|
||||||
err := pack.Received(&(midiDev.source))
|
|
||||||
return len(p), err
|
|
||||||
}
|
|
||||||
|
|
||||||
// AllNoteOff I don't want panic!
|
|
||||||
func (midiDev *MIDIDevice) AllNoteOff() {
|
|
||||||
for i := 0; i < 16; i++ {
|
|
||||||
for j := 0; j < 128; j++ {
|
|
||||||
midiDev.Write([]byte{byte(0x90 + i), byte(j), 0})
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
Loading…
x
Reference in New Issue
Block a user