---
title: "Video Input"
description: "Working with video input resources using the Python API"
url: https://developer.disguise.one/python-api/guides/video-input/
---

# Video Input Samples

This guide demonstrates how to work with video input resources using the Disguise Python API.

## Working with Video Clips

| Task | Python |
| --- | --- |
| Get all resources of type `VideoClip` | `all_clips = resourceManager.allResources(VideoClip)` |
| Iterate through a list of clips | `for clip in all_clips:` |
| Check if a video clip is a live input | `clip.isVideoIn` |
| Get the name of a clip’s video input source | `clip.Video_Input.localVideoIn.name` |
| Get the resolution of a clip’s video input | `clip.Video_Input.localVideoIn.videoInFormat.resolution` |
| Get the framerate of a clip’s video input | `clip.Video_Input.localVideoIn.videoInFormat.framerate` |
| Get the pixel format of a video input | `clip.Video_Input.localVideoIn.videoInFormat.pixelFormat` |
| Get the hardware ID of a video input | `clip.Video_Input.localVideoIn.hardwareId` |
| Set the video input for a clip | `clip.Video_Input.localVideoIn = video_in_device` |
| Set the format (resolution, interlaced, pixel format) for a logical video input | `clip.Video_Input.localVideoIn.setFormat(Vec2(1920, 1080), False, "YUV422")` |
| Change the pixel format of a video input | `clip.Video_Input.localVideoIn.pixelFormat = "RGB24"` |
| Change the resolution of a video input | `clip.Video_Input.localVideoIn.resolution = Vec2(1280, 720)` |
| Set the framerate of a video input format | `clip.Video_Input.localVideoIn.videoInFormat.framerate = 29.97` |
| Get the list of all input channels | `input_channels = VideoInSystem.inputChannels` |
| Find a video input by hardware ID | `video_in = VideoInSystem.findVideoIn(hardwareId)` |
| Get all logical video input devices | `logical_devices = VideoInDeviceMap.getLogicalDevices()` |
| Get the list of available capture groups | `available = VideoInSystem.captureGroupsAvailable` |
| Get the list of auto-mapped channels | `auto_mapped = VideoInSystem.autoMappedChannels` |
| Get the list of hardware IDs for a device | `hardware_ids = VideoInSystem.getHardwareIds(hardwareId)` |
| Create a teamed video input hardware ID | `teamed_id = VideoInSystem.makeTeamedVideoInHardwareId([id1, id2])` |
| Create a multiview video input hardware ID | `multiview_id = VideoInSystem.makeMultiviewVideoInHardwareId(sourceHardware, regionOfInterest)` |
| Update the crop rectangle for a logical video input | `clip.Video_Input.localVideoIn.cropRectangle = Rect(0, 0, 640, 480)` |
| Update the ACES transform parameters for a video input | `clip.Video_Input.localVideoIn.acesTransform = AcesInputTransformParameters(type, space, curve)` |
| Get a preview frame from a logical video input | `preview = clip.Video_Input.localVideoIn.getPreviewFrame(Int2(320, 180))` |
