---
title: AudioHardwarePropertyListenerProc
framework: coreaudio
role: symbol
role_heading: Type Alias
path: coreaudio/audiohardwarepropertylistenerproc
---

# AudioHardwarePropertyListenerProc

## Declaration

```swift
typealias AudioHardwarePropertyListenerProc = (AudioHardwarePropertyID, UnsafeMutableRawPointer?) -> OSStatus
```

## Parameters

- `inPropertyID`: The AudioHardwarePropertyID of the property that changed.
- `inClientData`: A pointer to client data established when the listener proc was registered with the AudioSystemObject.

## Return Value

Return Value The return value is currently unused and should always be 0.

## Discussion

Discussion Clients register an AudioHardwarePropertyListenerProc with the AudioSystemObject in order to receive notifications when the properties of the object change. Note that the same functionality is provided by AudioObjectPropertyListenerProc.

## See Also

### Data Types

- [AudioClassID](coreaudio/audioclassid.md)
- [AudioDeviceID](coreaudio/audiodeviceid.md)
- [AudioDeviceIOBlock](coreaudio/audiodeviceioblock.md)
- [AudioDeviceIOProc](coreaudio/audiodeviceioproc.md)
- [AudioDeviceIOProcID](coreaudio/audiodeviceioprocid.md)
- [AudioDevicePropertyID](coreaudio/audiodevicepropertyid.md)
- [AudioDevicePropertyListenerProc](coreaudio/audiodevicepropertylistenerproc.md)
- [AudioHardwarePropertyID](coreaudio/audiohardwarepropertyid.md)
- [AudioObjectID](coreaudio/audioobjectid.md)
- [AudioObjectPropertyElement](coreaudio/audioobjectpropertyelement.md)
- [AudioObjectPropertyListenerBlock](coreaudio/audioobjectpropertylistenerblock.md)
- [AudioObjectPropertyListenerProc](coreaudio/audioobjectpropertylistenerproc.md)
- [AudioObjectPropertyScope](coreaudio/audioobjectpropertyscope.md)
- [AudioObjectPropertySelector](coreaudio/audioobjectpropertyselector.md)
- [AudioStreamID](coreaudio/audiostreamid.md)
