Skip to main content
Glama
emicklei

melrōse musical expression player

by emicklei
rt_info.go1.36 kB
//go:build !wasm // +build !wasm package transport import ( "fmt" "log" "github.com/emicklei/melrose/notify" "gitlab.com/gomidi/midi/v2/drivers/rtmididrv/imported/rtmidi" ) func (t RtmidiTransporter) PrintInfo(defaultInID, defaultOutID int) { notify.PrintHighlighted("available inputs:") in, err := rtmidi.NewMIDIInDefault() if err != nil { log.Fatalln("can't open default MIDI in: ", err) } defer in.Close() ports, err := in.PortCount() if err != nil { log.Fatalln("can't get number of input ports: ", err) } for i := 0; i < ports; i++ { name, err := in.PortName(i) if err != nil { name = "" } isCurrent := "" if i == defaultInID { isCurrent = " (current)" } fmt.Printf("\t input device %d = %s%s\n", i, name, isCurrent) } fmt.Println() notify.PrintHighlighted("available outputs:") { // Outs out, err := rtmidi.NewMIDIOutDefault() if err != nil { log.Fatalln("can't open default MIDI out: ", err) } defer out.Close() ports, err := out.PortCount() if err != nil { log.Fatalln("can't get number of output ports: ", err) } for i := 0; i < ports; i++ { name, err := out.PortName(i) if err != nil { name = "" } isCurrent := "" if i == defaultInID { isCurrent = " (current)" } fmt.Printf("\toutput device %d = %s%s\n", i, name, isCurrent) } } fmt.Println() }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/emicklei/melrose'

If you have feedback or need assistance with the MCP directory API, please join our Discord server