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

# AudioStreamSetProperty

```
extern OSStatus AudioStreamSetProperty(AudioStreamID inStream, const AudioTimeStamp *inWhen, UInt32 inChannel, AudioDevicePropertyID inPropertyID, UInt32 inPropertyDataSize, const void *inPropertyData);
```

## Parameters

`inStream`

The AudioStream to change.

`inWhen`

A pointer to an AudioTimeStamp that says when to change the property’s value
relative to the device’s time base. NULL means execute the change
immediately.

`inChannel`

The channel of the property to change where 0 is the main channel.

`inPropertyID`

The AudioDevicePropertyID 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 AudioStream object 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 AudioObjectSetPropertyData().

---

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)