Releases: aronjanosch/foundryvtt-batch-media-optimizer
Release list
v1.4.0 — Storage backends: The Forge + AWS S3
Optimizes media on The Forge Assets Library and AWS S3 in addition to local data — backfill now discovers and repoints https:// references that earlier versions skipped (fixes #2).
What's new
- The Forge — assets stored as
assets.forge-vtt.com/<you>/…URLs in your own library. Auto-detected, no setup. Bazaar/shared and other users' libraries are read-only and skipped. - AWS S3 — bucket URLs (virtual-hosted or path-style). Bucket must allow cross-origin
GET(CORS) so the converter can read originals. - Single run spans every backend and media kind (WebP / WebM / Ogg) together.
- Read-only / unsupported references are surfaced as a skip notice.
Everything from v1.3.0 (image WebP, video WebM/VP9, audio Ogg/Opus, downscale, upload-time conversion, cleanup report) carries over unchanged for local data.
Notes
- S3 requires bucket CORS for
GETfrom the Foundry origin. The Forge needs none. - Module/system-shipped assets stay opt-in; core assets never touched.
v1.3.0 — Video (WebM/VP9) + Audio (Ogg/Opus) conversion
Adds backfill conversion for video (MP4/MOV → WebM/VP9) and audio (MP3/WAV/FLAC/M4A/AAC → Ogg/Opus) alongside the existing image path. All in-browser via WebCodecs — no server-side ffmpeg.
New
- Video → WebM/VP9 and Audio → Ogg/Opus as backfill media types (independent Images/Video/Audio toggles).
- Per-file selection in the dry-run plan — convert only what you tick.
- Fast video dry-run — size estimated from metadata; real encode on Apply with progress + cancel.
- Verified repoints — writes are read back; failures/silent drops are surfaced instead of reported as success.
- Optional module/system asset conversion (off by default, at your own risk) — converts linked media under
modules//systems/too.
Fixes
- v14 scene background/foreground repoint (writes now go through Level documents).
Notes
- Video/audio are backfill-only. Ogg/Opus + WebM/VP9 don't play in Safari — per-media-type toggles let those worlds opt out.
- Only core Foundry document references are repointed; third-party module state (e.g. Moulinette Soundboard) is out of scope.
v1.3.0-beta.4 — optional module/system asset conversion
New
- Convert module/system assets (at your own risk) — off-by-default toggle. When on, linked media under
modules//systems/(e.g. Czepeku) is also converted. Only document-linked media is touched; core Foundry assets are never converted. Risk: a package update can overwrite the original and remove the converted twin.
Includes everything from beta.3 (video, audio, per-file selection, video estimate, verified repoints, v14 scene-background fix).
Install / update (test)
Prerelease — reinstall via Manifest URL:
https://github.com/aronjanosch/foundryvtt-batch-media-optimizer/releases/download/v1.3.0-beta.4/module.json
v1.3.0-beta.3 — fix v14 scene background repoint
Fix
- v14 scene background/foreground now repoints correctly. The feature-detect tested
scene.levels?.length, but it's an EmbeddedCollection (.size, not.length), so writes fell through to the deprecatedScene#backgroundfield which v14 silently drops. Now writes through the Level documents. Fixes both video and image scene backgrounds on v14.
Install / update (test)
Prerelease — reinstall via Manifest URL:
https://github.com/aronjanosch/foundryvtt-batch-media-optimizer/releases/download/v1.3.0-beta.3/module.json
Includes everything from beta.2 (per-file selection, video estimation, verified repoints).
v1.3.0-beta.2 — selection + video estimate + verified repoints
Second beta of the video + audio work.
Changes since beta.1
- Per-file selection — tick/untick files in the dry-run plan; Apply only converts the ticked ones.
- Fast video dry-run — video size is now estimated from metadata (no upfront encode). Marked "(est.)" with a ~ prefix.
- Verified repoints — document updates are read back after writing; silently-dropped or failed writes are now listed in a "Document updates that didn't apply" box instead of being counted as success.
Install / update (test)
This is a prerelease — Foundry won't auto-update to it. Reinstall via Manifest URL:
https://github.com/aronjanosch/foundryvtt-batch-media-optimizer/releases/download/v1.3.0-beta.2/module.json
Notes
- Take a fresh world backup before any live run.
- Known issue under investigation: scene-background video repoint may not apply on v14 (the new failures box will now show the exact field — please report it).
- Ogg/Opus + WebM/VP9 don't play in Safari.
v1.3.0-beta.1 — Video (WebM/VP9) + Audio (Ogg/Opus) (test build)
Beta test build of the video + audio conversion work. Prerelease: GitHub assets are published for manifest-URL installs, but this version is not registered with Foundry (won't be offered as an update).
What's new
- Video MP4/MOV → WebM/VP9 (backfill). In-browser via WebCodecs.
- Audio MP3/WAV/FLAC/M4A/AAC → Ogg/Opus (backfill). Playlist + scene ambient sounds.
- Independent media-type toggles: Images / Video / Audio.
Install (test)
Paste into Foundry → Install Module → Manifest URL:
https://github.com/aronjanosch/foundryvtt-batch-media-optimizer/releases/download/v1.3.0-beta.1/module.json
⚠️ Notes
- Take a fresh world backup before any live run.
- Backfill only for video/audio (encode is too slow to block uploads).
- Ogg/Opus and WebM/VP9 don't play in Safari — leave those media types off if your players use Safari.
- Sources the browser can't decode (e.g. HEVC) are skipped with a per-file error.
- Untested in the wild — please report failures (failing file + console error).
v1.2.0-beta.1 — Forge + S3 backends (test build)
Test build — not for production. Adds support for media stored on The Forge Assets Library and AWS S3 (previously only local data was scanned).
Install for testing
Foundry → Add-on Modules → Install Module → paste in Manifest URL:
https://github.com/aronjanosch/foundryvtt-batch-media-optimizer/releases/download/v1.2.0-beta.1/module.json
What to test
- The Forge: open the optimizer, Scan & dry-run. Forge-hosted scene/token/journal images should now appear in the plan with byte savings. Then Apply and confirm references repoint to
.webpand images still load. - Assets outside your own Assets Library (Bazaar, shared) are intentionally skipped — you'll see a "skipped" notice (check console for reasons).
- S3: same flow. Bucket must allow cross-origin
GET(CORS), else the converter can't read originals.
Feedback welcome on issue #2.
v1.1.0 — Foundry v13 support
Adds Foundry v13 compatibility alongside v14 (compatibility.minimum is now 13).
- Scene background/foreground repointing now feature-detects
scene.levels: uses Level documents on v14, falls back to the Scene fields on v13. - All other functionality already worked on v13.
- Tested live on v13; v14 behavior unchanged.
v1.0.3
Clear compatibility.maximum so future Foundry versions can install. Automated release pipeline.
v1.0.2
Fix: scene background/foreground now repoint correctly on Foundry v14 (moved to child Level documents).