<!--
{
  "availability" : [
    "iOS: -",
    "iPadOS: -",
    "macCatalyst: -",
    "macOS: 10.0.0 - 10.6.0",
    "tvOS: -",
    "visionOS: -",
    "watchOS: -"
  ],
  "documentType" : "symbol",
  "framework" : "CoreMIDI",
  "identifier" : "/documentation/CoreMIDI/MIDISetupInstall",
  "metadataVersion" : "0.1.0",
  "role" : "Function",
  "symbol" : {
    "kind" : "Function",
    "modules" : [
      "Core MIDI"
    ],
    "preciseIdentifier" : "c:@F@MIDISetupInstall"
  },
  "title" : "MIDISetupInstall"
}
-->

# MIDISetupInstall

Installs a MIDISetup as the system’s current state.

```
extern OSStatus MIDISetupInstall(MIDISetupRef setup);
```

## Parameters

`setup`

The MIDISetup object to install. Ownership of this object is transferred from the client to the system; the client must *not* dispose of this MIDISetup.

## Return Value

An OSStatus result code.

## Discussion

A client can create a MIDISetup object using MIDISetupCreate, or MIDISetupFromData. This function will install this state as the current state of the system, possibly changing the devices visible to clients.

As of CoreMIDI 1.1, it is usually not necessary to call this function, as CoreMIDI manages a single persistent MIDISetup itself.

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)