<!--
{
  "availability" : [
    "macCatalyst: 13.1.0 - 13.1.0",
    "macOS: 10.0.0 - 10.6.0"
  ],
  "documentType" : "symbol",
  "framework" : "CoreAudio",
  "identifier" : "/documentation/CoreAudio/AudioHardwareSetProperty",
  "metadataVersion" : "0.1.0",
  "role" : "Function",
  "symbol" : {
    "kind" : "Function",
    "modules" : [
      "Core Audio"
    ],
    "preciseIdentifier" : "c:@F@AudioHardwareSetProperty"
  },
  "title" : "AudioHardwareSetProperty"
}
-->

# AudioHardwareSetProperty

```
extern OSStatus AudioHardwareSetProperty(AudioHardwarePropertyID inPropertyID, UInt32 inPropertyDataSize, const void *inPropertyData);
```

## Parameters

`inPropertyID`

The AudioHardwarePropertyID of the property to change.

`inPropertyDataSize`

A UInt32 indicating the size of the buffer pointed to by inData.

`inPropertyData`

The buffer containing the data to be used to change the property’s value.

## Return Value

An OSStatus indicating success or failure.

## Discussion

\abstract Tells the AudioSystemObject to change the value of the given property using the
provided data.
\discussion Note that the value of the property should not be considered changed until the
HAL has called the listeners as many properties values are changed
asynchronously. Also note that the same functionality is provided by the
function AudioObjectGetPropertyData().

---

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)