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

Statamic Video Tools Laravel Package

eminos/statamic-video-tools

Statamic Video Tools is an add-on for embedding and managing videos in your Statamic site. It provides video fieldtypes, responsive embed output, and handy template helpers for YouTube, Vimeo, and other sources, making video content easy to add and display.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Build vs. buy on video infrastructure. This package makes self-hosted video a viable alternative to managed transcoding/streaming vendors (Mux, Cloudflare Stream, AWS Elemental, Vimeo OTT). The decision hinges on three variables it directly shifts: recurring per-minute transcoding + storage fees, data-residency/compliance constraints (no bytes leave your infrastructure), and engineering time to own ffmpeg pipelines. Model the TCO against your current monthly video spend and your team's appetite for owning media ops.
  • Roadmap: unblocking video as a first-class content type. Multi-format output (AV1/WebM, H.264/MP4, HEVC/MP4, HLS adaptive), poster extraction, and animated WebP thumbnails mean editors can upload in the CP and get publishable, broadly compatible playback without a developer in the loop. This is the gating capability for course platforms, marketing sites, documentation portals, and product tours.
  • Accessibility and SEO scope. Auto-generated VTT/SRT on upload makes captions a default rather than a per-release chore — a decision that affects WCAG 2.1 AA compliance posture, legal risk, and organic search (video schema, transcript indexing). Five transcript formats (VTT, SRT, TXT, paragraphs, word-level JSON) also open the door to search-over-transcript and content repurposing features without a separate ASR vendor.
  • Adaptive streaming without a CDN contract. Native HLS support lets you ship quality-adaptive playback from your own origin, which changes the calculus on whether a CDN is a hard requirement at launch or a later optimization.
  • Alpha/transparency handling as a content decision. Automatic dual-source output (HEVC/MP4 for Safari, AV1/WebM for Chrome/Firefox) means motion-graphic overlays and branded transparent video become feasible in the CMS rather than hand-exported per browser — worth flagging to design/brand stakeholders.
  • Automation and cache strategy. VideoConversionCompleted and VideoAssetProcessed events give you a clean seam for static cache busting, CDN purges, webhook fan-out, and downstream pipelines — this is the difference between video being a manual content-ops burden and being part of your deploy story.
  • Cost governance via preset conditions. Skipping presets by resolution, duration, codec, pixel format, or alpha channel prevents waste — you don't burn CPU transcoding a 9-second clip to five formats. This is the primary lever for keeping self-hosted encoding economical.
  • Use cases this specifically unlocks: internal/L&D video libraries, healthcare or legal content that can't touch third-party processors, membership sites with gated media, editorial sites publishing product demos, and any stack already standardized on Statamic where adding a separate video vendor would fragment the editorial experience.

When to Consider This Package

Adopt when:

  • You are already on Statamic (this is an addon, not a standalone Laravel package — it assumes Statamic's asset container, CP, fieldtypes, and Antlers/Blade templating). On plain Laravel, this is largely out of scope.
  • Data residency, privacy, or air-gap requirements make third-party transcoding a non-starter — regulated industries, public sector, EU-resident media, or contractual prohibitions on subprocessors.
  • Your video volume is moderate and predictable — editorial libraries, course catalogs, product demos — where a handful of presets per upload is manageable and per-minute vendor pricing is a rounding error you'd rather not pay forever.
  • You have (or can get) queue workers and ffmpeg/whisper.cpp-capable infrastructure. Encoding and transcription are CPU-bound; this package converts a predictable SaaS bill into variable compute you must provision, monitor, and scale.
  • You need programmatic control over outputs — custom presets, conditional skipping, per-preset re-runs — which managed vendors typically don't expose at this granularity.
  • Accessibility/transcription is a first-class requirement and you want it generated at upload time rather than bolted on later.

Look elsewhere when:

  • You need global-scale, low-latency delivery at high volume. Self-hosted encoding plus self-hosted origin is a poor fit for millions of views; a managed streaming platform's edge network and per-title encoding will beat this on both quality and reliability.
  • You have no appetite for media ops. Someone must own ffmpeg version upgrades, GPU/CPU capacity, queue backpressure, failed-conversion triage, and storage lifecycle. If that's genuinely not staffable, buy the managed service.
  • Real-time or live streaming is on the roadmap — this is file-based/VOD tooling.
  • You need DRM, per-viewer entitlements, or watermarking out of the box; those are downstream builds, not included features.
  • Whisper transcription quality on your specific domain (heavy accents, dense jargon, multiple speakers) hasn't been validated — run a sample before committing to self-hosted ASR over a commercial API.
  • You're not on Statamic and don't want to port the concepts; or you're on Statamic but need your video authored outside the CMS asset pipeline.
  • v1.0.0 is a first major release — evaluate the maintainer's responsiveness and release cadence before making it load-bearing for revenue-generating media. Have a rollback plan and pin the version.

How to Pitch It (Stakeholders)

For executives: We can stop paying per-minute transcoding and streaming fees and stop sending video content to third parties. This package turns our existing Laravel/Statamic stack into a complete video pipeline — encoding, adaptive streaming, captions, thumbnails, and a player — running entirely on infrastructure we already control. The trade is a predictable SaaS invoice for variable compute we manage ourselves. That trade is clearly favorable if our video volume is steady and moderate; it's the wrong trade if we expect viral, high-volume public playback. Recommendation: pilot on one content collection, measure compute cost against the vendor bill, and decide at 60 days.

For engineering: One dependency, one migration, standard Laravel surface. It wires into Statamic's asset pipeline and exposes a {{ video }} tag and <x-video> Blade component, with a pair mode for full markup control — so front-end work is normal templating, not a custom SDK. Preset conditions (resolution, duration, codec, pixel format, alpha) keep encoding costs sane. Two Laravel events (VideoConversionCompleted, VideoAssetProcessed) give us clean hooks for static cache busting and downstream automation without touching package internals. What we own: ffmpeg and whisper.cpp binaries, queue capacity and backpressure, storage lifecycle, and failed-job triage. What we get free: AI transcription in five formats on upload, which deletes a manual captioning workflow and a second vendor relationship.

Key risks to name up front: (1) v1.0.0 maturity — pin the version and watch maintainer responsiveness; (2) compute is now our problem, and encoding spikes can starve shared queue workers unless we isolate them; (3) self-hosted Whisper accuracy should be spot-checked on our actual content before we rely on it for compliance; (4) no DRM or entitlement layer — if we ever need gated or protected playback, that's a build, not a config flag.

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.
htinlynn/genius-helper
maco-studios/hephaestus
elmogy/larafast
xeviant/laravel-paystack
gorilladash/laravel-website-sdk
martialbe/flysystem-oss
chondal/3312client
jeroen-g/flickr
opscale-co/nova-genbi
itsjustvita/laravel-retention
tequilarapido/trackit
gregsphotography/site-builder-filament
cabaoctavio/laravel-query-log
gregsphotography/site-builder-components
io-digital/clickatell
snowsoft/laravel-admin
oxygen/auth
relicsoftware/barakah-payment-gateway
tobya/work-with-composer
equipc/laravel-email-validator