# VO Video Output Demo

## Overview

This sample demonstrates how to use the K230 VO (Video Output) module for video output. The VO module supports multiple output devices and display modes.

## Functional Description

### VO Functions

This sample demonstrates the following VO output capabilities:

- multiple output devices
- multiple display modes
- scaling support
- configurable frame rate
- color-space configuration

### Supported Output Devices

- HDMI output
- LCD output
- MIPI output
- BT1120 digital output

### Display Characteristics

- resolution support
- refresh rates such as 60 Hz and 50 Hz
- aspect ratios such as 16:9 and 4:3
- color spaces such as BT.601 and BT.709

## Source Location

Demo source path: `src/rtsmart/examples/mpp/sample_vo_video`

## Usage

### Build Method

In the `K230 RTOS SDK` root directory, run `make menuconfig`, enable the VO video-output sample, then rebuild the firmware.

### Run Example

```bash
./sample_vo_video <connector_type> [options]
```

### Parameter Description

| Parameter | Description | Range |
| --- | --- | --- |
| `connector_type` | connector type | HDMI (101), LCD (20), MIPI, etc. |
| `width` | output width | 128-3840 |
| `height` | output height | 64-2160 |
| `frame_rate` | output frame rate | 24-60 |

### Expected Result

After running, the sample will:

1. initialize VO
1. configure the output device
1. configure output parameters
1. start video output
1. support dynamic parameter tuning

Example output:

```text
VO Video Output Demo
====================

Initializing VO module...
VO initialized successfully

Configuring output device...
Connector type: 101 (HDMI)
Output resolution: 1920x1080
Frame rate: 60Hz

Starting video output...
Video output started!

Display info:
Resolution: 1920x1080
Refresh rate: 60Hz
Color space: BT.601
Aspect ratio: 16:9

Use keys to change output settings:
[1] Change resolution
[2] Change frame rate
[3] Change color space
[Q] Quit

Press Ctrl+C to exit.
```

```{admonition} Tip
Use `list_connector` to check supported connector types and enum values. For VO APIs, refer to [Display Output API](../../api_reference/mpp/display.md).
```
