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

Php Mediainfo Laravel Package

mhor/php-mediainfo

A PHP wrapper around the MediaInfo CLI for reading detailed metadata from audio and video files. It provides a clean object-oriented API for codecs, duration, bitrate, resolution, channels, and track details, returning parsed output for easy inspection.

Deep Wiki
Context7

Product Decisions This Supports

  • Feature feasibility for media-heavy roadmap items. Upload validation (is this really a video? is it within our duration/resolution limits?), metadata panels in the CMS/DAM, "watch" pages showing technical specs, format-aware transcoding ladders, storage/egress cost estimation, and eligibility rules for duration-bound features (pre-roll, clips, previews).
  • Build vs. buy. This is effectively a "borrow" decision: an MIT-licensed, thin wrapper around the MediaInfo CLI. The cost is integration and ops time, not license spend. It's cheaper than writing your own parser or maintaining ad-hoc ffprobe shell plumbing, and it defers the much larger commitment of a managed media platform.
  • Sequencing. Lets you ship ingestion metadata before investing in a transcoding pipeline. You can validate, route, and display assets with a few days of work instead of blocking the story on infrastructure.
  • Architecture/vendor posture. Keeps media analysis behind a small seam, so you can swap to pure-PHP (getID3), ffmpeg tooling, or a managed service (Mux, Cloudinary, AWS MediaConvert) later without rewriting product surfaces.
  • Success metrics to instrument: time-to-publish for uploads, % of uploads rejected pre-transcode, reduction in failed transcode jobs caused by bad sources, support tickets about "wrong duration/format," and cost per 1k inspected assets.

When to Consider This Package

Adopt when:

  • You need read-only technical metadata — duration, codec, bitrate, resolution, aspect ratio, audio channels, container — at upload or ingest time.
  • Your runtime can execute the mediainfo binary (Docker image, worker fleet) and your security posture tolerates process invocation.
  • Metadata extraction fits naturally into a queued Laravel job; moderate volume with batch/async tolerance.
  • You want a small, auditable wrapper rather than a full ffmpeg abstraction.
  • PHP 7.x/8.x with Composer and Laravel package auto-discovery is acceptable.

Look elsewhere when:

  • You cannot shell out (shared hosting, locked-down serverless, strict no-exec policy) → getID3 or a hosted metadata API.
  • You need to transform media — transcode, thumbnail, trim, remux. That's ffmpeg (e.g., php-ffmpeg) or a managed pipeline; this package only reads.
  • You need metadata writing, chapter/subtitle muxing, frame-level analysis, or live/streaming sources.
  • You need vendor SLAs, active maintenance guarantees, or a large community. At ~120 stars and thin-wrapper scope, assume you own this code path and plan accordingly.
  • Throughput is very high or latency-critical; per-file process spawn has a floor cost.

Diligence checklist before committing: pin the MediaInfo binary version in your image and test against your real codec mix (HEVC, AV1, ProRes, HLS segments); confirm the service provider/facade registers on your Laravel version; never interpolate user-supplied paths into a shell command — validate and sandbox; set process timeouts and failure fallbacks.

How to Pitch It (Stakeholders)

To executives: A free, MIT-licensed library that lets the platform read video and audio technical metadata at upload. It's the cheap enabler for a cluster of roadmap features — upload validation, format-aware transcoding, media library display, duration-based product rules — without signing a media platform contract. The investment is days of engineering, not dollars. Risk is low and reversible: it sits behind a thin interface, so if we outgrow it we swap in a managed service without touching product surfaces.

To engineering: One Composer dependency plus one system binary in the image, with a Laravel facade and a plain PHP API returning structured metadata. Recommendation: wrap it in our own MediaInspector contract, run it in queued jobs with explicit timeouts, pin the binary version, treat all paths as untrusted input, and add a fallback for unsupported/corrupt files so ingestion never hard-fails on a single bad asset.

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.
coleus/frame
thtg88/journalism
filagora/filagora-ai-forums
rlacerda83/query-parser
socialdept/atp-orm
cboxdk/laravel-assistant-client
socialdept/atp-resolver
socialdept/tenant-domains
tautvydasr/blade-class-names
socialdept/color-scales
maherelgamil/controller
coleus/widgets
coleus/table
coleus/users
coleus/music
coleus/health
coleus/calendar
coleus/notes
coleus/support
coleus/settings