Contents

MIDIInputPortCreateWithProtocol(_:_:_:_:_:)

Creates an input port through which the client may receive incoming MIDI messages from any MIDI source.

Declaration

func MIDIInputPortCreateWithProtocol(_ client: MIDIClientRef, _ portName: CFString, _ protocol: MIDIProtocolID, _ outPort: UnsafeMutablePointer<MIDIPortRef>, _ receiveBlock: @escaping  MIDIReceiveBlock) -> OSStatus

Parameters

  • client:

    The client to own the newly created port.

  • portName:

    The name of the port.

  • protocol:

    The MIDI protocol variant to deliver to this port. The system automatically converts messages from one protocol to another as needed.

  • outPort:

    On successful return, points to the newly created MIDI port.

  • receiveBlock:

    A callback block the system invokes with incoming MIDI from sources connected to this port.

Return Value

An OSStatus result code.

Discussion

After creating a port, use MIDIPortConnectSource(_:_:_:) to establish an input connection from any number of sources to your port.

The system calls the receive block on a separate high-priority thread owned by Core MIDI.

See Also

Port management