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.
craftcms/url-validator
directorytree/privacy-filter-classifier
directorytree/privacy-filter
datacore/hub-sdk
develia/commons
cuci/prototurk-sdk
cuci/prototurk-sdk-symfony
develia/geo-bundle
dreamzy/livewire-charts
touchestate-sdk/php-sdk
22h/doctrine-garbage-collection-bundle
agtp/agtp-php
agtp/mod-php
splash/sonata-admin
splash/metadata
splash/openapi
splash/scopes
splash/toolkit
testo/output-teamcity
testo/bridge-symfony