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
Laravel Media Converter

Laravel Media Converter Laravel Package

meema/laravel-media-converter

Laravel Media Converter uses FFmpeg to convert uploaded video and audio files via queued jobs, with progress tracking and custom conversion formats. It handles thumbnails, streaming, and S3 storage, giving you a clean, configurable API for background media processing.

View on GitHub
Deep Wiki
Context7

🎥 This package allows you to easily integrate with AWS MediaConvert.

Frequently asked questions about Laravel Media Converter
What does meema/laravel-media-converter actually do?
It is a thin Laravel service-provider wrapper around the AWS SDK for PHP MediaConvert client, used to submit video transcoding jobs to AWS MediaConvert. It keeps AWS client construction, credential resolution, and job submission out of your controllers and jobs, but it does not own uploads, storage, asset modeling, or a full transcode pipeline. Treat it as an SDK convenience layer rather than a complete media platform.
Which Laravel and PHP versions does this package support?
The last release was August 2021, which predates Laravel 9's PHP 8 requirement shift and the Laravel 10 and 11 support windows. Expect to widen the illuminate/support constraint or fork the package before installing on a current Laravel app. Check the composer.json constraints against your target versions before committing.
Is meema/laravel-media-converter maintained and safe for production?
The project has a very weak adoption signal, with around 56 stars, zero dependents, and no releases since 2021. Solo-maintainer abandonment is a realistic planning assumption, and there is no community integration test corpus to borrow confidence from. Pin the dependency, review the code, and plan a fork or internal wrapper if you adopt it.
What AWS setup is required before I can use it?
You need an IAM principal with MediaConvert job permissions plus S3 read and write access on your input and output buckets. You also need at least one job template or preset set authored in the MediaConvert console, and an event path such as an SNS topic or EventBridge rule for job-state notifications. The package cannot substitute for that infrastructure work.
Does it handle MediaConvert job completion and failure notifications?
The package primarily submits jobs to MediaConvert, and status handling may be left to your application. Verify in the source whether it polls, listens to SNS or EventBridge, or simply returns job IDs. Plan to store job IDs in your own model so retries and failure handling remain under your control.
Can I use it for local FFmpeg transcoding without AWS?
No. Despite FFmpeg being mentioned in some package descriptions, this package wraps the AWS MediaConvert client and requires an AWS account with MediaConvert access. For local or self-hosted FFmpeg work, use a package such as pbmedia/laravel-ffmpeg or spatie/laravel-medialibrary with an FFmpeg driver.
How does it compare to spatie/laravel-medialibrary or laravel-ffmpeg?
They solve different problems. Spatie's medialibrary and laravel-ffmpeg handle asset modeling and local conversion pipelines, while this package is only a submission layer for AWS MediaConvert. Choose it when you need managed adaptive-bitrate outputs such as HLS or DASH and already run on AWS.
Does it support MediaConvert job templates, presets, and output groups?
The package appears to be a light wrapper that submits job payloads, so support for templates, presets, and output groups likely depends on the raw job JSON you pass. Check the source and README for explicit helpers before assuming first-class template support. In most cases you will author presets in the MediaConvert console and reference them in your payload.
How do I test code that uses this package?
Check whether the AWS MediaConvert client is resolved through Laravel's container, because that determines whether you can swap in a mock. If it is container-resolvable, bind a fake client using the AWS SDK's mock handler in your test suite. There is no published integration test corpus, so expect to write your own coverage.
Does it support assumed-role credentials and multi-tenant S3 isolation?
Credential resolution is delegated to the AWS SDK, so assumed-role support depends on how the package constructs the client and what you configure. Multi-tenant bucket isolation is your responsibility, not something the package enforces. Verify the config options for credentials, region, and endpoint before relying on it in a multi-tenant app.
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.
jinas/dhivatar
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
cgv/localized-resource