---
title: IOUserVideoObject
framework: VideoDriverKit
role: symbol
role_heading: Class
platforms: [driverkit 27.0+]
path: videodriverkit/iouservideoobject
---

# IOUserVideoObject

The base class for all video objects.

## Declaration

```occ
class IOUserVideoObject;
```

## Overview

Overview Don’t subclass IOUserVideoObject or allocate it directly.

## Topics

### Creating a video object

- [init](videodriverkit/iouservideoobject/init-853a8.md)
- [init](videodriverkit/iouservideoobject/init-5dkv4.md)

### Freeing a video object

- [free](videodriverkit/iouservideoobject/free.md)

### Getting information about the class

- [GetClassID](videodriverkit/iouservideoobject/getclassid.md)
- [GetBaseClassID](videodriverkit/iouservideoobject/getbaseclassid.md)
- [IOUserVideoClassID](videodriverkit/videodriverkit/iouservideoclassid.md)

### Working with object names

- [GetName](videodriverkit/iouservideoobject/getname.md)
- [SetName](videodriverkit/iouservideoobject/setname.md)

### Working with object identifiers

- [GetObjectID](videodriverkit/iouservideoobject/getobjectid.md)
- [IOUserVideoObjectID](videodriverkit/videodriverkit/iouservideoobjectid.md)

### Working with elements

- [GetElementCategoryName](videodriverkit/iouservideoobject/getelementcategoryname.md)
- [SetElementCategoryName](videodriverkit/iouservideoobject/setelementcategoryname.md)
- [GetElementName](videodriverkit/iouservideoobject/getelementname.md)
- [SetElementName](videodriverkit/iouservideoobject/setelementname.md)
- [GetElementNumberName](videodriverkit/iouservideoobject/getelementnumbername.md)
- [SetElementNumberName](videodriverkit/iouservideoobject/setelementnumbername.md)

### Using custom properties

- [AddCustomProperty](videodriverkit/iouservideoobject/addcustomproperty.md)
- [RemoveCustomProperty](videodriverkit/iouservideoobject/removecustomproperty.md)
- [IOUserVideoCustomProperty](videodriverkit/iouservideocustomproperty.md)

### Working with queues

- [GetWorkQueue](videodriverkit/iouservideoobject/getworkqueue.md)

## Relationships

### Inherits From

- [OSObject](driverkit/osobject.md)

### Inherited By

- [IOUserVideoBox](videodriverkit/iouservideobox.md)
- [IOUserVideoBuffer](videodriverkit/iouservideobuffer.md)
- [IOUserVideoClockDevice](videodriverkit/iouservideoclockdevice.md)
- [IOUserVideoControl](videodriverkit/iouservideocontrol.md)
- [IOUserVideoCustomProperty](videodriverkit/iouservideocustomproperty.md)
- [IOUserVideoStream](videodriverkit/iouservideostream.md)

## See Also

### Essentials

- [IOUserVideoDriver](videodriverkit/iouservideodriver.md)
