Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Media Bundle

Media Bundle Laravel Package

darkwood/media-bundle

Symfony CLI tool that turns a YAML video definition into per-scene voice and video assets, persists run state, and generates a render manifest. Includes mocked provider tests and an operational guide for Replicate setup and benchmark mode.

View on GitHub
Deep Wiki
Context7

🎬 Darkwood trailer generator

Frequently asked questions about Media Bundle
How do I install darkwood/media-bundle in a Laravel project?
Install it with Composer using the package name darkwood/media-bundle, then follow the repository setup if you are using the CLI directly. The README shows composer install and php bin/console app:video:generate examples/video.yaml as the entry point. In Laravel, invoke the console command through Symfony Process or Artisan::call rather than expecting a native service provider.
Can I use Darkwood media bundle with Laravel queues for video generation?
Yes, the tool can be offloaded to a Laravel queue by dispatching a job that invokes the Symfony CLI command. The technical evaluation notes a TrueAsyncDriver in Symfony v8.1.1, so you can start generation with an async option instead of blocking a request. Track job status in your own model and clean up intermediate files in failure callbacks.
What YAML format does app:video:generate expect?
The tool consumes a YAML video definition that describes scenes and turns them into per-scene voice and video assets plus a render manifest. A sample definition is provided at examples/video.yaml, and the operational guide covers environment variables and Replicate setup. Version your YAML files if you change the schema.
Does darkwood/media-bundle support asynchronous video rendering?
The evaluation references a TrueAsyncDriver added with Symfony v8.1.1, enabling non-blocking scene rendering. Invoke the generator with the async option and manage status in Laravel, because the CLI will not block your user-facing request. Configure queue timeouts and clean up orphaned assets when jobs fail.
How do I test video generation without calling Replicate?
The repository includes provider tests with HTTP mocked, so no live Replicate calls are needed. Run make phpunit or ./bin/phpunit to execute the test suite. For Laravel integration tests, use Queue::fake() and stub the async driver to avoid race conditions.
What are the production risks of using this package with Laravel?
The main risks are Replicate API limits or outages, temporary file locations for async runs, and queue timeouts for long renders. Use exponential backoff, dead-letter queues, storage_path('app/temp/') for intermediates, and failure callbacks to clean up. Pin the package version and check Symfony dependency conflicts with composer why-not.
Is darkwood/media-bundle compatible with Laravel 10?
The technical evaluation recommends testing with Laravel 10.x and newer. There is no documented native Laravel package integration, so compatibility depends on invoking the Symfony CLI and on shared Symfony component versions. Run composer why-not and a small integration test before production.
Where does the tool store generated assets and run state?
The README says run state is persisted and the operational guide documents where files land. It does not hard-code Laravel paths, so configure the CLI to write intermediates and output under storage_path('app/...') if you need predictable cleanup. Review docs/mvp-video.md for the exact locations.
What alternatives exist to darkwood/media-bundle for Laravel video generation?
Alternatives include building a custom Laravel job around FFmpeg and a TTS or cloud video API, or using a Laravel-native media package if one matches your pipeline. This tool is a good fit when you want a YAML-driven Symfony CLI that generates per-scene assets and a render manifest. Compare it on Replicate dependency, async support, and state management.
How is darkwood/media-bundle maintained and updated?
The repository is updated with Symfony compatibility changes such as the v8.1.1 upgrade and TrueAsyncDriver. It includes mocked provider tests and an operational guide, which are good maintenance signals. Pin versions and review changelogs because YAML schema and Symfony dependencies can change.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
gmostafa/php-graphql-client
xeviant/paystack
snowsoft/faker
meditationsteps/blogetc
animalyoung/laravel-influxdb
onix-solutions/sms-telera
lonely-lights/prosetta
oxygen/data
oxygen/core
jengo/base
xiloryx/log-collector
a21ns1g4ts/filament-stripe
la-php/laravel-admin
artisan-build/community-prompts
vleroy/smart
ayles-software/laravel-australian-public-holidays
cboxdk/laravel-id-spatie
cboxdk/laravel-id-billing
cboxdk/laravel-id-billing-bridge
simple-as-fuck/php-performance-log