# Vegas Pro

> Comprehensive operational skill specification for Anthropic Claude to automate, script, troubleshoot, and optimize MAGIX VEGAS Pro 21/22, .NET C# Scripting API (ScriptPortal.Vegas), OpenFX (OFX), NVENC GPU acceleration, and batch rendering.

- Skill: `alivirgo/vegas-pro` (Agent Skill, multi-file: 3 files)
- Install (CLI): `npx skillmds@latest add alivirgo/vegas-pro`
- Raw SKILL.md: https://api.skillmd.com/api/skills/alivirgo/vegas-pro/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Integrations & APIs
- Author: alivirgo (https://skillmd.com/u/alivirgo)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/alivirgo/vegas-pro

---


# MAGIX VEGAS Pro NLE & Automation AI Skill Guide (Claude)

## Overview & Engine Architecture
MAGIX VEGAS Pro 21/22 is a high-speed non-linear editing (NLE) and audio-visual post-production platform for Windows. Built on an asynchronous timeline architecture, VEGAS Pro combines **32-bit floating-point video processing**, the **OpenFX (OFX) plugin standard**, hardware-accelerated **NVENC / Intel QSV / AMD VCE encoding**, **ASIO multi-channel audio routing**, and the **VEGAS .NET Scripting API (`ScriptPortal.Vegas.dll`)**. Claude operates as a Principal Video Systems Architect and VEGAS Pro Automation Specialist, specializing in **C# / .NET Scripting API development**, **GPU memory & NVENC render crash diagnostics**, **Variable Frame Rate (VFR) remediation**, and **automated batch export workflows**.

### VEGAS Pro Engine & ScriptPortal .NET Stack

```
┌─────────────────────────────────────────────────────────────┐
│                 VEGAS Pro System Architecture               │
│                                                             │
│  Timeline & Media Organization Layer                        │
│  ├── Multi-Track Timeline (A/B Roll, Ripple, Nested Projects│
│  ├── Project Media Pool (Bins, Smart Collections, Tags)     │
│  └── Trimmer & Event Pan/Crop (Keyframed Bézier Masking)    │
│                                                             │
│  Processing Engine & Hardware Acceleration                  │
│  ├── 32-bit Float Video Engine & ACES 1.2 Color Management  │
│  ├── OpenFX (OFX) Video Effects & Transitions Host          │
│  └── Hardware Encoders (NVIDIA NVENC, Intel QSV, AMD VCE)   │
│                                                             │
│  Automation & .NET Scripting Core                           │
│  ├── `ScriptPortal.Vegas.dll` (.NET Framework 4.8 / C# / JS)│
│  └── CLI Script Execution (`vegaspro.exe -SCRIPT:...`)      │
└─────────────────────────────────────────────────────────────┘
```

---

## Operational Capabilities & Agent Directives

1. **`ScriptPortal.Vegas` C# Script Development**: Author compiled C# scripts for VEGAS Pro automating track creation, marker generation, batch region rendering, and event alignment.
2. **GPU Hardware Acceleration & Render Crash Triage**: Resolve access violations (`0x80004005`) and freeze anomalies during NVENC renders by calibrating Dynamic RAM Preview buffers and updating to NVIDIA Studio Drivers.
3. **Variable Frame Rate (VFR) Audio Sync Triage**: Identify smartphone and OBS screen recordings with unstable frame timings and script automated FFmpeg Constant Frame Rate (CFR) transcodes.
4. **Batch Rendering Automation**: Construct automated scripts iterating over all timeline Regions and exporting them into distinct MP4/ProRes media files.

---

## Production C# Automation: Automated Region Batch Exporter Script (`ScriptPortal.Vegas`)

Save this script as `BatchRenderRegions.cs` inside `%USERPROFILE%\Documents\Vegas Script Menu\`:

```csharp
// ==============================================================================
// MAGIX VEGAS Pro .NET C# Automation Script: Automated Region Batch Exporter
// Iterates through all Timeline Regions and renders each to an MP4 video file.
// ==============================================================================
using System;
using System.IO;
using System.Windows.Forms;
using ScriptPortal.Vegas;

public class EntryPoint {
    public void FromVegas(Vegas vegas) {
        string outputDirectory = @"C:\Exports\BatchRegions\";
        Directory.CreateDirectory(outputDirectory);

        // 1. Find Target Render Template (e.g. MAGIX AVC/AAC MP4 - Internet HD 1080p 29.97fps)
        Renderer targetRenderer = null;
        RenderTemplate targetTemplate = null;

        foreach (Renderer r in vegas.Renderers) {
            if (r.FileTypeName.Contains("MAGIX AVC/AAC MP4")) {
                targetRenderer = r;
                foreach (RenderTemplate t in r.Templates) {
                    if (t.Name.Contains("Internet HD 1080p")) {
                        targetTemplate = t;
                        break;
                    }
                }
                break;
            }
        }

        if (targetRenderer == null || targetTemplate == null) {
            MessageBox.Show("Error: MAGIX AVC 1080p render template not found.");
            return;
        }

        // 2. Iterate Over All Timeline Regions
        int regionCount = vegas.Project.Regions.Count;
        if (regionCount == 0) {
            MessageBox.Show("No regions found on timeline. Mark regions first (press R).");
            return;
        }

        int successCount = 0;
        foreach (Region region in vegas.Project.Regions) {
            string sanitizedLabel = string.IsNullOrEmpty(region.Label) ? "Region_" + successCount : region.Label;
            string outputPath = Path.Combine(outputDirectory, sanitizedLabel + ".mp4");

            // Execute Region Render
            RenderArgs args = new RenderArgs();
            args.OutputFile = outputPath;
            args.RenderTemplate = targetTemplate;
            args.Start = region.Position;
            args.Length = region.Length;

            RenderStatus status = vegas.Render(args);
            if (status == RenderStatus.Complete) {
                successCount++;
            }
        }

        MessageBox.Show(string.Format("Successfully rendered {0} of {1} regions to {2}", successCount, regionCount, outputDirectory));
    }
}
```

---

## Technical Troubleshooting Matrix

| Issue & Failure Signature | Root Cause Analysis | Diagnostic & Resolution Pathway |
| :--- | :--- | :--- |
| **Render Crashes with `Access Violation (0x80004005)`** | Outdated GPU driver or conflict between Dynamic RAM Preview and OpenFX GPU processing. | 1. In *Options $\rightarrow$ Preferences $\rightarrow$ Video*, set **Dynamic RAM Preview max** to `0 MB` during rendering.<br>2. Update GPU to the latest **NVIDIA Studio Driver**.<br>3. In Preferences $\rightarrow$ File I/O, enable **Legacy AVC decoding**. |
| **Audio and Video Drift Out of Sync on MP4 Clips** | Source footage was recorded with Variable Frame Rate (VFR) (e.g. iPhone, Zoom, OBS). | Pre-transcode media to CFR using FFmpeg:<br>`ffmpeg -i input.mp4 -c:v libx264 -crf 18 -preset fast -vsync cfr -c:a aac output_cfr.mp4`. |
| **VEGAS Pro Hangs on Startup: `Creating Windows...`** | Corrupted user preferences cache or broken VST/OFX plugin scan. | Launch VEGAS Pro while holding `Ctrl + Shift` $\rightarrow$ Check **Delete all cached application data** $\rightarrow$ Click Yes. |
| **OFX Plugin Throws Missing License Watermark** | OpenFX licensing daemon not recognized by host process. | In VEGAS Pro $\rightarrow$ Tools $\rightarrow$ Re-scan OFX Plugins. |

---

## Command Line Syntax & Batch Processing

```bash
# 1. Execute C# Script via VEGAS Pro Command Line
"C:\Program Files\VEGAS\VEGAS Pro 22.0\vegaspro.exe" -SCRIPT:"C:\Scripts\BatchRenderRegions.cs"

# 2. Reset VEGAS Pro Preferences via CLI (Delete Cache Folder)
rmdir /s /q "%LOCALAPPDATA%\VEGAS Pro\22.0"
```

### Essential File Locations
- **Scripting Directory**: `%USERPROFILE%\Documents\Vegas Script Menu\`
- **Project Files**: `*.veg`
- **Application Preferences**: `%APPDATA%\VEGAS Pro\22.0\`

---

## Agent Operational Directive
> **MANDATORY**: When rendering long or complex timelines in VEGAS Pro, set "Dynamic RAM Preview max" to 0 MB in Video Preferences to release GPU VRAM for the hardware NVENC encoder and prevent render crashes.

