# Transcoding parameters
> Complete reference of Chunkify CLI transcoding parameters: video settings, audio options, codec configurations.
## Parameters
| Flag | Type | Description |
|------|------|-------------|
| `-i, --input` | string | Input video to transcode. It can be a file, HTTP URL or source ID (src_*) |
| `-o, --output` | string | Output file path |
| `-f, --format` | string | `mp4_h264`, `mp4_h265`, `mp4_av1`, `webm_vp9`, `hls_h264`, `hls_h265`, `hls_av1`, `jpg` |
| `--transcoders` | int | Number of transcoders to use |
| `--vcpu` | int | vCPU per transcoder (4, 8, or 16) |
### Video Settings
| Flag | Type | Description | Value |
|------|------|-------------|-------|
| `-s, --resolution` | string | Set resolution wxh | 0-8192x0-8192 |
| `-r, --framerate` | float | Set frame rate | 15-120 |
| `-g, --gop` | int | Set group of pictures size | 1-300 |
| `--vb` | int | Set video bitrate in bits per second | 100000-50000000. You can also use units like 2000K or 2M |
| `--maxrate` | string | Set maximum bitrate in bits per second | 100000-50000000. You can also use units like 2000K or 2M |
| `--bufsize` | string | Set buffer size in bits | 100000-50000000. You can also use units like 2000K or 2M |
| `--pixfmt` | string | Set pixel format | yuv410p, yuv411p, yuv420p, yuv422p, yuv440p, yuv444p, yuvJ411p, yuvJ420p, yuvJ422p, yuvJ440p, yuvJ444p, yuv420p10le, yuv422p10le, yuv440p10le, yuv444p10le, yuv420p12le, yuv422p12le, yuv440p12le, yuv444p12le, yuv420p10be, yuv422p10be, yuv440p10be, yuv444p10be, yuv420p12be, yuv422p12be, yuv444p12be |
| `--vn` | bool | Disable video |
### Audio Settings
| Flag | Type | Description | Value |
|------|------|-------------|-------|
| `--ab` | int | Set audio bitrate in bits per second | 32000-512000. You can also use units like 128K |
| `--channels` | int | Set number of audio channels | 1, 2, 5, 7 |
| `--an` | bool | Disable audio |
### H.264/H.265/AV1 Settings
| Flag | Type | Description | Value |
|------|------|-------------|-------|
| `--crf` | int | Set constant rate factor | H.264/H.265: 16-35, AV1: 16-63, VP9: 15-35 |
| `--preset` | string | Set encoding preset | H.264/H.265: ultrafast, superfast, veryfast, faster, fast, medium, AV1: 6-13 |
| `--profilev` | string | Set video profile | H.264: baseline, main, high, high10, high422, high444, H.265/AV1: main, main10, mainstillpicture |
| `--level` | int | Set encoding level | H.264: 10, 11, 12, 13, 20, 21, 22, 30, 31, 32, 40, 41, 42, 50, 51, H.265: 30, 31, 41, AV1: 30, 31, 41 |
| `--x264keyint` | int | H.264 - Set x264 keyframe interval | 1-300 |
| `--x265keyint` | int | H.265 - Set x265 keyframe interval | 1-300 |
### VP9 Settings
| Flag | Type | Description | Value |
|------|------|-------------|-------|
| `--quality` | string | Set VP9 quality | good, best, realtime |
| `--cpu-used` | string | Set VP9 CPU usage | 0-8 |
### HLS Settings
| Flag | Type | Description | Value |
|------|------|-------------|-------|
| `--hls-manifest-id` | string | Set HLS manifest ID |
| `--hls-time` | int | Set HLS segment duration in seconds | 1-10 |
| `--hls-segment-type` | string | Set HLS segment type | mpegts, fmp4 |
| `--hls-enc` | bool | Enable HLS encryption |
| `--hls-enc-key` | string | Set HLS encryption key |
| `--hls-enc-key-url` | string | Set HLS encryption key URL |
| `--hls-enc-iv` | string | Set HLS encryption IV |
### JPG Settings
| Flag | Type | Description | Value |
|------|------|-------------|-------|
| `--interval` | int | Set frame extraction interval in seconds | 1-60 |
| `--sprite` | bool | Generate sprite sheet instead of multiple JPG files |