Skip to content

Latest commit

 

History

4 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Genesis Media Engine

Python 3.10+ License MIT COSMIC Ecosystem

A declarative DSL for video generation — write scenes in text, render with FFmpeg.

Genesis replaces timeline dragging with structured scene descriptions. You define beats, transitions, and assets in text; the engine parses, validates, and renders output through a secure plugin pipeline.

Features

  • Scene DSL — deterministic text-to-scene parser extracting duration, aspect ratio, and timed beats
  • Security Gates — pre-render secret detection, path validation, and plugin isolation
  • Plugin System — sandboxed rendering backends with manifest validation and lifecycle management
  • Fusion Modes — sequential, parallel, and adaptive rendering strategies
  • Native Renderer — FFmpeg filter-graph pipeline with concat, overlays, and text burn-in

Quick Start

from genesis.dsl.scene_parser import parse_scene_request

scene = parse_scene_request("15 second demo video, 16:9 aspect ratio")
# scene.title → "Demo Sequence"
# scene.beats → 4 timed segments with motion descriptions
# scene.assets → procedural glyphs, UI panels, motion graphics

Install

pip install genesis-media-engine
pip install "genesis-media-engine[all]"  # full features

Usage

from genesis.scene_parser import parse_scene_request
from genesis.gates.security_gate import SecurityGate
from genesis.plugins.plugin_loader import PluginLoader

scene = parse_scene_request("30 second product showcase, vertical 9:16")

gate = SecurityGate()
report = gate.evaluate(scene)
assert report["passed"], f"Gates failed: {report['issues']}"

loader = PluginLoader()
renderer = loader.load("ffmpeg_renderer")
output = renderer.render(scene, output_path="output/product.mp4")

CLI

genesis render scene.yaml -o output.mp4
genesis validate scene.yaml
genesis plugins list

Architecture

genesis/
├── dsl/                # Scene parser, schema definitions, pre-render validation
├── gates/              # Security gate, benchmark gate, credibility gate
├── plugins/            # Plugin loader, registry, sandboxed execution
├── fusion_mode/        # Sequential, parallel, adaptive rendering strategies
├── native_inhouse/     # Native FFmpeg rendering backend
├── validation/         # Input/output schema validation
└── cli.py              # CLI entry point
Text Prompt → Scene Parser → Security Gates → Plugin Loader → Renderer → Output

Limitations

  • No keyframe animation curves or complex transitions yet
  • Rendering is FFmpeg-based; no real-time GPU acceleration
  • Plugin ecosystem limited to built-in renderers
  • No visual preview — full render required to inspect output

Roadmap

  • Keyframe animation and easing curves
  • GPU-accelerated rendering backend
  • Live preview mode
  • Extended plugin marketplace

License

MIT License — see LICENSE for details. Part of the COSMIC ecosystem.

About

DSL-driven media rendering engine for video, audio, and image generation

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages