Weave Code
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
Transcoding Bundle

Transcoding Bundle Laravel Package

ac/transcoding-bundle

Symfony bundle that wires AC\Transcoding\Transcoder as a container service. Configure FFmpeg and/or HandBrakeCLI paths/timeouts, register custom adapters/presets/listeners via tags, and run CLI commands to transcode files or check adapter/preset status.

View on GitHub
Deep Wiki
Context7

Symfony2 bundle to integrate the AC Transcoding Component

Frequently asked questions about Transcoding Bundle
Can I use ACTranscodingBundle in Laravel even though it’s a Symfony bundle?
No, this bundle is designed for Symfony applications. Laravel developers would need to adapt the underlying `AmericanCouncils/Transcoding` library directly or explore Laravel-compatible alternatives like `php-ffmpeg` or `spatie/laravel-medialibrary`.
How do I install and configure ACTranscodingBundle in a Symfony project?
Run `composer require ac/transcoding-bundle`, then add the configuration block to `app/config.yml` under `ac_transcoding`, specifying paths for FFmpeg/HandBrakeCLI and enabling/disabling them. Validate paths exist in your environment before deployment.
Does this bundle support Symfony 5 or 6, or is it limited to Symfony 2?
The bundle is officially for Symfony 2, but Symfony 3+ may work with minor adjustments. Test thoroughly, especially for service autowiring or container compilation changes. Consider forking if critical features break.
How do I create custom transcoding presets or adapters for FFmpeg/HandBrake?
Define your custom presets or adapters as services in Symfony’s container, then tag them with `transcoding.preset` or `transcoding.adapter`. The bundle auto-wires these into the `transcoder` service, allowing seamless integration.
What happens if FFmpeg or HandBrakeCLI isn’t installed on the server?
The bundle will throw runtime errors if the configured paths are invalid or the binaries are missing. Validate tool availability in CI/CD pipelines or deployment scripts, and consider Docker images with pre-installed dependencies.
Can I use this bundle for async transcoding (e.g., background jobs) in Laravel?
No, this bundle is synchronous. For Laravel, offload transcoding to a queue (e.g., Laravel Horizon, RabbitMQ) using the underlying `AmericanCouncils/Transcoding` library directly, bypassing the Symfony bundle.
How do I handle errors like timeouts or corrupt output files during transcoding?
Use tagged `transcoding.listener` or `transcoding.subscriber` services to log errors or trigger alerts. The bundle lacks built-in retry logic, so implement custom listeners for resilience (e.g., exponential backoff).
Are there alternatives to ACTranscodingBundle for Laravel that don’t require Symfony?
Yes, consider `php-ffmpeg` for direct FFmpeg integration or `spatie/laravel-medialibrary` for media handling. For HandBrake, explore PHP wrappers like `HandBrakePHP` or call the CLI directly via `exec()` with error handling.
How do I test custom presets or adapters before deploying to production?
Use the CLI command `transcoder:transcode [infile] [preset] [outfile]` to test presets locally. For adapters, verify their configuration in `app/config.yml` and check status with `transcoder:status`. Mock dependencies in unit tests.
Will this bundle work in a Dockerized environment, and how do I ensure FFmpeg is available?
Yes, but you must include FFmpeg/HandBrakeCLI in your Docker image (e.g., `FROM jrottenberg/ffmpeg`). Configure the bundle’s paths to match the container’s filesystem (e.g., `/usr/bin/ffmpeg`). Test builds with a multi-stage Dockerfile.
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.
besmartand-pro/php-quality-config
sentix/ai-chatbot
codifyo/ts-generator-bundle
testo/fiber
mintobit/jobqueue
a4sex/maintenance-bundle
a4sex/entity-date-update
a4sex/client-identifier
a4sex/base-utilites
a4sex/key-value-storage
a4sex/micro-status
chilldev/dependency-injection-extra
datinglibre/datinglibre-app-api
biberltd/corebundle
bricre/symfony-bundle-test
biberltd/logbundle
dominium/http-adapter-bundle
dominium/google-analytics
a4sex/auto-clean-entity
christhompsontldr/laravel-inky