---
title: "AudioDeviceCreateIOProcIDWithBlock(_:_:_:_:)"
framework: coreaudio
role: symbol
role_heading: Function
path: "coreaudio/audiodevicecreateioprocidwithblock(_:_:_:_:)"
---

# AudioDeviceCreateIOProcIDWithBlock(_:_:_:_:)

## Declaration

```swift
func AudioDeviceCreateIOProcIDWithBlock(_ outIOProcID: UnsafeMutablePointer<AudioDeviceIOProcID?>, _ inDevice: AudioObjectID, _ inDispatchQueue: dispatch_queue_t?, _ inIOBlock: @escaping AudioDeviceIOBlock) -> OSStatus
```

## Parameters

- `outIOProcID`: The newly created AudioDeviceIOProcID.
- `inDevice`: The AudioDevice to register the Block with.
- `inDispatchQueue`: The dispatch queue on which the IOBlock will be dispatched. All IOBlocks are dispatched synchronously. Note that this dispatch queue will be retained until a matching call to AudioDeviceDestroyIOProcID is made. If this value is NULL, then the IOBlock will be directly invoked.
- `inIOBlock`: The AudioDeviceIOBlock to register. Note that this block will be Block_copy’d and the reference maintained until a matching call to AudioDeviceDestroyIOProcID is made.

## Return Value

Return Value An OSStatus indicating success or failure.

## Discussion

Discussion Creates an AudioDeviceIOProcID from an AudioDeviceIOBlock

## See Also

### Functions

- [AudioConvertHostTimeToNanos(_:)](coreaudio/audioconverthosttimetonanos(_:).md)
- [AudioConvertNanosToHostTime(_:)](coreaudio/audioconvertnanostohosttime(_:).md)
- [AudioDeviceCreateIOProcID(_:_:_:_:)](coreaudio/audiodevicecreateioprocid(_:_:_:_:).md)
- [AudioDeviceDestroyIOProcID(_:_:)](coreaudio/audiodevicedestroyioprocid(_:_:).md)
- [AudioDeviceGetCurrentTime(_:_:)](coreaudio/audiodevicegetcurrenttime(_:_:).md)
- [AudioDeviceGetNearestStartTime(_:_:_:)](coreaudio/audiodevicegetneareststarttime(_:_:_:).md)
- [AudioDeviceStart(_:_:)](coreaudio/audiodevicestart(_:_:).md)
- [AudioDeviceStartAtTime(_:_:_:_:)](coreaudio/audiodevicestartattime(_:_:_:_:).md)
- [AudioDeviceStop(_:_:)](coreaudio/audiodevicestop(_:_:).md)
- [AudioDeviceTranslateTime(_:_:_:)](coreaudio/audiodevicetranslatetime(_:_:_:).md)
- [AudioGetCurrentHostTime()](coreaudio/audiogetcurrenthosttime().md)
- [AudioGetHostClockFrequency()](coreaudio/audiogethostclockfrequency().md)
- [AudioGetHostClockMinimumTimeDelta()](coreaudio/audiogethostclockminimumtimedelta().md)
- [AudioHardwareCreateAggregateDevice(_:_:)](coreaudio/audiohardwarecreateaggregatedevice(_:_:).md)
- [AudioHardwareDestroyAggregateDevice(_:)](coreaudio/audiohardwaredestroyaggregatedevice(_:).md)
