# Gausian_native_editor **Repository Path**: mirrors_trending/Gausian_native_editor ## Basic Information - **Project Name**: Gausian_native_editor - **Description**: Gausian - Rust-based local video editor for AI video production - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-11-21 - **Last Updated**: 2025-12-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README
Gausian logo

Gausian Native Editor

Fast, native video editor and preview tool built in Rust with GPU rendering, timeline editing, and local ComfyUI integration.

Get StartedFeaturesArchitectureDesktopCLIDecoders

Visit gausian.xyz ↗  •  Join our Discord ↗

Rust UI Decoders Platforms Discord Follow on X


Gausian is a native editor focused on snappy preview, practical timeline tools, and smooth ingest/export. It supports hardware decoding (VideoToolbox on macOS, GStreamer pipelines cross‑platform), a WGPU preview pipeline, and integrates with a local ComfyUI for prompt‑based generation via an embedded WebView and auto‑import of outputs. A CLI is included for headless operations. ## 👥 Contributors [![Contributors](https://contrib.rocks/image?repo=gausian-AI/Gausian_native_editor)](https://github.com/mAengo31) ## ✨ Features - GPU-accelerated preview (WGPU) with YUV→RGB shaders and readback - Timeline editing, assets panel, project persistence (SQLite) - Local ingest: FFmpeg/ffprobe probing, image/video/audio - Exporters: FCPXML (1.9/1.10), FCP7 XML, EDL, JSON - Proxy generation via GStreamer (ProRes/NVENC/VAAPI/software) - Local ComfyUI: optional embedded WebView and auto‑import from a local ComfyUI output folder - Screenplay/Storyboard helpers with LLM providers (OpenAI, etc.) - Cross-platform desktop (macOS/Windows/Linux) ## 🚀 Getting Started Prerequisites - Rust (stable) - FFmpeg/ffprobe on PATH - GStreamer for proxy/advanced decode paths (recommended on all platforms; required for some proxies) - macOS (Homebrew): `brew install ffmpeg gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad gst-libav` - Ubuntu/Debian: `sudo apt-get install -y ffmpeg gstreamer1.0-libav gstreamer1.0-plugins-{base,good,bad} gstreamer1.0-tools` - Windows: install a recent GStreamer build (system PATH), FFmpeg - ComfyUI (local, optional): required if you want to open the embedded WebView or auto‑import its outputs. Install and run ComfyUI locally (default at http://127.0.0.1:8188). See https://github.com/comfyanonymous/ComfyUI Desktop app ```bash cargo run --bin desktop ``` CLI (headless) ```bash # Show commands cargo run -p cli -- --help ``` ## 🧩 Architecture - apps/desktop (egui + wgpu) - Timeline, assets, GPU preview, audio engine, export - ComfyUI integration (local only): optional embedded WebView and auto‑import - apps/comfywebview - Minimal native WebView window for ComfyUI - crates/* - timeline — graph, tracks, commands - project — SQLite DB, migrations, asset/proxy/job tables - media-io — probe/export helpers, waveforms, encoders - renderer — WGPU renderer and WGSL shaders - exporters — FCPXML/FCP7/EDL/JSON - plugin-host — WASM/Python stubs - native-decoder — VideoToolbox (macOS) + optional GStreamer backend - cli — import/export/convert/analyze/new/encoders
Project Structure (click to expand)
apps/
  desktop/          # egui UI, preview, decode, export
  comfywebview/     # lightweight native WebView for ComfyUI

crates/
  timeline/         # timeline data structures and commands
  project/          # SQLite DB + migrations
  media-io/         # probe, waveforms, proxy helpers
  renderer/         # WGPU renderer & shaders (WGSL)
  exporters/        # FCPXML/FCP7/EDL/JSON exporters
  plugin-host/      # plugin runtime stubs (WASM/Python)
  native-decoder/   # VideoToolbox & GStreamer backend
  cli/              # headless commands

formats/            # JSON specs (screenplay/storyboard)
## 🖥 Desktop App Build & run ```bash cargo run --bin desktop ``` Optional features - Embedded WebView (macOS only): `cargo run --bin desktop --features embed-webview` - Requires a local ComfyUI installation running (default http://127.0.0.1:8188) - In the app, set the ComfyUI Repo Path (folder containing `main.py`) to enable local integrations Basic flow - Import media in Assets panel (drag drop or “Import path” + Add) - Timeline: click to seek, drag to move/trim, snapping to seconds/edges - Export: choose preset; FCPXML/FCP7/EDL/JSON also available - ComfyUI (local): set Repo Path, enable auto‑import to ingest outputs - Note: only local ComfyUI is supported at this time; no remote/cloud connection ## 🛠 CLI Examples ```bash # Analyze media and print JSON cargo run -p cli -- analyze ./media/clip.mp4 --waveforms # List hardware encoders cargo run -p cli -- encoders # Convert to FCPXML/EDL/JSON (demo sequence) cargo run -p cli -- convert in.edl out.fcpxml --output-format fcpxml ``` See all commands ```bash cargo run -p cli -- --help ``` ## 🎞 Proxy Encoding Cross‑platform GStreamer pipeline with hardware profiles: - macOS: VideoToolbox ProRes (`vtdec(_hw)` + `vtenc_prores`) - NVIDIA: NVENC (`nvh264enc`, `nvvidconv`) - Intel: VAAPI (`vah264enc`, `vapostproc`) - Fallback: DNxHR (software) macOS GStreamer (Homebrew) env (used by the app) ```bash export GST_PLUGIN_PATH=/opt/homebrew/lib/gstreamer-1.0 export GST_PLUGIN_SYSTEM_PATH=/opt/homebrew/lib/gstreamer-1.0 export GST_PLUGIN_SCANNER=/opt/homebrew/libexec/gstreamer-1.0/gst-plugin-scanner export GST_REGISTRY_REUSE_PLUGIN_SCANNER=no ``` ## 🧪 Decoder & GStreamer Notes - Prefer VideoToolbox on macOS; use GStreamer elsewhere (or as a macOS option) - To force VT over libav in GStreamer, set: ```bash export GST_PLUGIN_FEATURE_RANK="vtdec_h264:PRIMARY+1,vtdec_hevc:PRIMARY+1" ``` - One-time diagnostics: ```bash export GST_DECODER_DIAG=1 ``` ## 🗺 Roadmap (Upcoming) - Timeline polish and UX improvements - Automatic LORA creator - Advanced color management and LUTs - Rich effects and transitions - Multi‑window workspace - Collaborative editing - Plugin marketplace ## 🤝 Contributing - Ensure `rustfmt`/`clippy` are green - Keep changes focused; update docs as needed - File issues with repro steps and logs ---

Built with Rust, egui, wgpu, GStreamer, and lots of 🧪.

## 📄 License - **Core**: MPL-2.0 (Mozilla Public License 2.0) - **Pro Features**: Separate commercial license for advanced codecs and pro features ## 🤝 Contributing 1. Fork the repository 2. Create a feature branch 3. Make your changes 4. Add tests for new functionality 5. Submit a pull request ## 🐛 Troubleshooting ### Common Issues **"FFmpeg not found"**: - Install FFmpeg and ensure it's in your PATH - On macOS: `brew install ffmpeg` - On Windows: Download from https://ffmpeg.org/ **"No hardware encoders detected"**: - This is normal on some systems - Software encoders will be used (slower but functional) - Ensure GPU drivers are up to date **Performance Issues**: - Close other GPU-intensive applications - Reduce preview resolution in timeline - Enable proxy generation for large files ## 📞 Support For questions, bug reports, or feature requests, please open an issue on the project repository. - Join our Discord: https://discord.gg/JfsKWDBXHT --- ## Star History [![Star History Chart](https://api.star-history.com/svg?repos=gausian-AI/Gausian_native_editor&type=date&legend=top-left)](https://www.star-history.com/#gausian-AI/Gausian_native_editor&type=date&legend=top-left) **Built with ❤️ in Rust** | **GPU-Accelerated** | **Cross-Platform** | **Open Source**