Skip to content

Releases: SolidKeyAB/kmpmedia-demo

v0.1.41 — Morph the clip itself 🫧

Choose a tag to compare

@ozgesolidkey ozgesolidkey released this 27 Sep 13:58

New 🫧 Morph the clip itself screen — dogfoods the library's brand-new OGMorphShape (lib v1.10.0, now live on Maven Central).

One ogMorphSequence([Circle, Diamond, Triangle, star-lasso, Circle], progress) feeds the same morphing Shape into three surfaces at once — a running video (OGPlayerConfig.clipShape), an animated GIF (OGImageView.clipShape), and a plain Modifier.clip tile — so all three masks animate circle → diamond → triangle → lasso while the media keeps playing. Auto infinite-transition + a manual slider. Identical commonMain code on Android & iOS.

Under the hood each endpoint outline is resampled once (cached) and only the points are lerped per frame, so it holds 60fps — the same sample-once/lerp-per-frame approach as the SVG path morph.

APK: KMPMedia-Demo-v0.1.41.apk (debug-keystore signed → sideloadable). versionCode 41.

Built against se.solidkey:kmpmedia-lib:1.10.0.

v0.1.40 — morph hazard expands & contracts

Choose a tag to compare

@ozgesolidkey ozgesolidkey released this 26 Sep 19:02

UFO Dodge's shape-shifting MORPH hazard now visibly expands and contracts as it shape-shifts.

Its two path-d endpoints now differ in overall radius (outer 30→48 ≈ 1.6×, inner valleys 12→40), not just spikiness — so each red hazard breathes between a small spiky star (contracted) and a big rounded crystal (expanded) while it re-shapes. Still one radius lerp per vertex per frame (no extra parse/allocation), so many can breathe at 60fps.

Pure demo change — dogfoods the library's SVG path-morphing API (OGSvgNodeOverride.pathDataTo + morphProgress), which is unchanged. README gains an in-game morph-hazard GIF.

v0.1.39 — path morphing everywhere

Choose a tag to compare

@ozgesolidkey ozgesolidkey released this 24 Sep 20:26

Dogfoods KMPMedia 1.9.0 path morphing in two places:

  • Runtime-editable SVG screen — a new Morph a path section: one <path> tweens star ⇄ ring forever on an infinite transition (parse-once, lerp-per-frame).
  • UFO Dodge game — a new shape-shifting hazard: ~15% of spawns are an OGSVGView whose <path> morphs spiky-star ⇄ crystal via morphProgress, drifting down with the same depth/collision as any hazard.

Install KMPMedia-Demo-v0.1.39.apk below.

v0.1.38 — Runtime SVG path `d` ✍️

Choose a tag to compare

@ozgesolidkey ozgesolidkey released this 23 Sep 20:46

Runtime path d override in the Runtime-editable SVG screen.

The Runtime-editable SVG demo now adds a live ▶ / ❚❚ / ■ media icon whose single <path> swaps its geometry at runtime via the override map — showing off the new OGSvgNodeOverride.pathData in se.solidkey:kmpmedia-lib:1.8.0. Same code on Android and iOS.

Install the attached APK to try it (Android; unknown-sources may need enabling).

v0.1.37 — Runtime-editable SVG 🎨

Choose a tag to compare

@ozgesolidkey ozgesolidkey released this 23 Sep 14:32

🎨 Runtime-editable SVG

New Runtime-editable SVG screen: one gauge .svg is loaded once, and a slider drives an OGSvgNodeOverride map — the needle rotates and the arc + status dot recolour, live, with no re-parse. Dogfoods the library's new runtime-svg API (v1.7.0); the same Compose Multiplatform code on Android and iOS.


📱 Debug-signed APK — sideload it (enable "Install unknown apps"). Android only; run the iOS app from source.

v0.1.36 — Animated GIF 🎞️

Choose a tag to compare

@ozgesolidkey ozgesolidkey released this 23 Sep 12:07

🎞️ Animated GIF

New Animated GIF screen in the playground: point one OGImageView at a .gif URL and it plays — looping frames on Android (AnimatedImageDrawable) and iOS (Skia Codec), the same Compose Multiplatform code. And the shape clip that crops a still photo works on the moving image too.

What you'll see:

  • A looping Newton's cradle straight from a .gif URL
  • A galloping horse clipped into a circle and a diamond
  • An everyday loading spinner

Powered by KMPMedia library v1.6.0 (GIF playback on Android + iOS).


📱 Install: debug-signed APK — sideload it (enable "Install unknown apps"). Android only; run the iOS app from source.

v0.1.35 — UFO Dodge gets sound 🔊

Choose a tag to compare

@ozgesolidkey ozgesolidkey released this 19 Sep 22:07

KMPMedia Demo v0.1.35 — UFO Dodge gets sound 🔊

The UFO Dodge game now plays sound effects using the library's brand-new audio sprites (kmpmedia 1.5.0).

A single sfx.mp3 packs three clips, each fired by id from a small voice pool so overlapping sounds don't cut each other off:

  • collect (0–280 ms) — on catching a star/bonus
  • hit (400–750 ms) — on taking damage
  • levelup (900 ms → end) — on leveling up

This dogfoods OGAudioSprite — one asset, many triggerable slices — on both Android and iOS from shared code.

Install

Sideload the attached KMPMedia-Demo-v0.1.35.apk (Android; enable "install from unknown sources"). It's a debug-signed build for easy sideloading.

v0.1.33 — Black-hole warp 🌀

Choose a tag to compare

@ozgesolidkey ozgesolidkey released this 16 Sep 11:49

🌀 Black-hole warp — dive a wormhole into a whole new universe

Fly the UFO straight INTO a wormhole portal and it warps you to a new sector of the universe:

  1. DIVE — the UFO spirals and shrinks into the black hole.
  2. TUNNEL — a full-screen Star-Trek warp-streak field (radiating light streaks) plays while the backdrop video swaps to a different point of the universe.
  3. EMERGE — the UFO spins back out into the new sector, and you keep flying — score carries over.

A wormhole opens roughly every ~24s (a real spinning space-video circle with a glowing ring; it drifts slowly so it's always reachable). Diving in is depth-agnostic — just steer into it. The video cues (meteor storm / starfall) re-sync automatically to each new sector's timeline.

Zero library change — this is all a showcase of existing KMPMedia features: OGAVPlayer source-swap reload (same decoder, new sky), video-in-any-shape, OGAnimatedContainer, cue points, and ogDepth. Both Android + iOS compile; the full sequence was verified live on the Android emulator.