How subhashladumor1/laravel-ai-video works
Laravel AI Video is a Laravel package for turning prompts or images into rendered videos, with direct driver operations and an asynchronous job option. Its documented composed workflow plans scenes, generates scene visuals and motion plus voice, then renders a video; templates and budget checks shape or constrain generation. The README documents these orchestration capabilities, but the composed driver and several subsystem implementations were not sampled, so their links follow documented behavior rather than inspected call sites.
Main entry points: ComposedDriver.php Composed Driver · VideoManager.php Video Manager · OpenAIDriver.php OpenAI Driver · ProcessVideoJob.php Queued Job
Components 26
Laravel Entry
- AiVideo Facade
src/Facades/AiVideo.php - Video Manager
src/VideoManager.php - Queued Job
src/Jobs/ProcessVideoJob.php - Driver Contract
src/Contracts/VideoDriver.php
Video Orchestration
- Composed Driver
src/Drivers/ComposedDriver.php - Scene Planner
src/ScenePlanner.php - Subtitles
src/SubtitleGenerator.php
AI Generation
- OpenAI Driver
src/Drivers/OpenAIDriver.php - Gemini Driver
src/Drivers/GeminiDriver.php - Runway Driver
src/Drivers/RunwayDriver.php - Leonardo Driver
src/Drivers/LeonardoDriver.php - Voice Generator
src/VoiceGenerator.php
Output
- Video Renderer
src/VideoRenderer.php - Video Templates
src/Templates/Template.php - Instagram Reel
src/Templates/InstagramReelTemplate.php
Controls
- Guarded Driver
src/Drivers/GuardAwareVideoDriver.php - AI Guard Adapter
src/Support/AiGuardIntegration.php - Package Config
src/Config/ai-video.php
Other components
- User
- OpenAI API
- Gemini API
- Runway API
- Leonardo API
- FFmpeg
- Laravel AI Guard
- Generated Video
Connections 26
- User → AiVideo Facade: requests generation
- AiVideo Facade → Video Manager: selects driver
- Video Manager → Package Config: reads settings
- Video Manager → Composed Driver: creates driver
- Video Manager → Guarded Driver: wraps driver
- User → Queued Job: dispatches job
- Queued Job → Video Manager: resolves driver
- Queued Job → AI Guard Adapter: checks and logs
- Guarded Driver → AI Guard Adapter: checks budget
- Composed Driver → Scene Planner: plans scenes
- Composed Driver → OpenAI Driver: generates visuals
- Composed Driver → Runway Driver: animates images
- Composed Driver → Leonardo Driver: animates images
- Composed Driver → OpenAI Driver: generates voice
- Composed Driver → Video Renderer: renders scenes
- Composed Driver → Subtitles: generates subtitles
- Scene Planner → OpenAI Driver: requests scenes
- Scene Planner → Gemini Driver: requests scenes
- Voice Generator → OpenAI Driver: requests speech
- OpenAI Driver → OpenAI API: calls API
- Gemini Driver → Gemini API: calls API
- Runway Driver → Runway API: calls API
- Leonardo Driver → Leonardo API: calls API
- Video Renderer → FFmpeg: concatenates clips
- Video Templates → Instagram Reel: implemented by
- Video Renderer → Generated Video: writes output