---
title: SetControlMemoryDescriptor
framework: VideoDriverKit
role: symbol
role_heading: Instance Method
platforms: [driverkit 27.0+]
path: videodriverkit/iouservideobuffer/setcontrolmemorydescriptor
---

# SetControlMemoryDescriptor

Sets a new IOMemoryDescriptor to use for video IO on the IOUserVideoStream.

## Declaration

```occ
kern_return_t SetControlMemoryDescriptor(IOMemoryDescriptor *in_control_memory_descriptor);
```

## Parameters

- `in_control_memory_descriptor`: A pointer to a IOMemoryDescriptor whose buffer will be mapped to the Host for doing video IO

## Discussion

Discussion Setting this value should only be done during the PerformDeviceConfigurationChange() call. If the value needs to be changed, RequestDeviceConfigChange() should be called to allow IO to stop and the config change to be performed.

## See Also

### Working with memory descriptors

- [SetDataMemoryDescriptor](videodriverkit/iouservideobuffer/setdatamemorydescriptor.md)
- [GetDataMemoryDescriptor](videodriverkit/iouservideobuffer/getdatamemorydescriptor.md)
- [GetControlMemoryDescriptor](videodriverkit/iouservideobuffer/getcontrolmemorydescriptor.md)
