# avfoundation

<a id="avfoundation"></a>

# avfoundation

Apple AVFoundation device enumeration helpers.

## Functions

| Return | Name | Description |
|--------|------|-------------|
| `bool` | [`getDeviceList`](#getdevicelist-2)  | Enumerate video input devices using AVFoundation. Populates device capabilities (resolutions, frame rates, pixel formats). |

---

<a id="getdevicelist-2"></a>

### getDeviceList

```cpp
bool getDeviceList(Device::Type type, std::vector< av::Device > & devices)
```

[Defined in src/av/include/icy/av/apple/avfoundation.h:35](https://github.com/auscaster/icey/blob/main/src/av/include/icy/av/apple/avfoundation.h#L35)

Enumerate video input devices using AVFoundation. Populates device capabilities (resolutions, frame rates, pixel formats). 
#### Returns
True if enumeration succeeded.

#### Parameters

| Parameter | Type | Description |
|-----------|------|-------------|
| `type` | [`Device::Type`](https://auscaster.com/icey/docs/api-reference/icy-av-Device.md#type-8) | Must be [Device::VideoInput](https://auscaster.com/icey/docs/api-reference/icy-av-Device.md#type-8). |
| `devices` | std::vector< [`av::Device`](https://auscaster.com/icey/docs/api-reference/icy-av-Device.md#device) > & | Output vector to fill with discovered devices. |
