Skip to content

Commit 7f5926e

Browse files
committed
libmidi_io: backends: alsamidi: Import stripped down version of _find_port()
Change-Id: I6b386bbdc5856224a0ab8771ee1ea6b22cf5eab1
1 parent 8363c1f commit 7f5926e

File tree

1 file changed

+12
-2
lines changed

1 file changed

+12
-2
lines changed

libmidi_io/backends/alsamidi/__init__.py

+12-2
Original file line numberDiff line numberDiff line change
@@ -5,16 +5,26 @@
55
#
66
"""MIDI I/O ALSA MIDI backend."""
77

8-
from alsa_midi import MidiBytesEvent, PortCaps, PortType, SequencerClient
9-
from alsa_midi.mido_backend import _find_port
8+
from alsa_midi import MidiBytesEvent, PortCaps, PortInfo, PortType, SequencerClient
109
from libmidi.types.message import message_from_bytes
1110
from libmidi.types.messages.common import BaseMessage
1211
from threading import Thread
12+
from typing import List
1313
from weakref import WeakValueDictionary
1414

1515
from libmidi_io.types.device import Device
1616
from libmidi_io.types.port import BasePort
1717

18+
def _find_port(ports: List[PortInfo], name: str) -> PortInfo:
19+
for port in ports:
20+
libmidi_name = f"{port.client_name}:{port.name} {port.client_id}:{port.port_id}"
21+
if name != libmidi_name:
22+
continue
23+
24+
return port
25+
26+
raise IOError(f"Unknown port {name}")
27+
1828
class _Client:
1929
instance: '_Client' = None
2030

0 commit comments

Comments
 (0)