@maravilla-labs/platform 0.12.0 → 0.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +24 -0
- package/dist/config.d.ts +2 -2
- package/dist/index.d.ts +1 -1
- package/dist/index.js +10 -0
- package/dist/index.js.map +1 -1
- package/dist/{transforms-DwCPOVTn.d.ts → transforms-BHWez32E.d.ts} +99 -1
- package/package.json +1 -1
- package/src/remote-client.ts +9 -1
- package/src/transforms.ts +105 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,29 @@
|
|
|
1
1
|
# @maravilla-labs/platform
|
|
2
2
|
|
|
3
|
+
## 0.14.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- c92a9a3: `transforms.extractFrames` gains an optional `detach_audio` option: extract a video's audio track to a chosen storage key in the same job as the frame extraction, so a single call yields both the frame set and a detachable audio asset.
|
|
8
|
+
|
|
9
|
+
## 0.13.0
|
|
10
|
+
|
|
11
|
+
### Minor Changes
|
|
12
|
+
|
|
13
|
+
- 195fe65: Pre-extracted video frames for deterministic begin-frame renders.
|
|
14
|
+
- `@maravilla-labs/platform`: add `transforms.extractFrames(srcKey, { fps, ... })`
|
|
15
|
+
— decode any video to a sequence of still images at a fixed fps, returning a
|
|
16
|
+
`JobHandle` whose `output_key` holds a `FramesetManifest` (frames live under
|
|
17
|
+
`${prefix}/frame_NNNNNN.<ext>`). General capability; the frames renderer
|
|
18
|
+
consumes it to swap `<video>`→`<img>` per frame, and it's reusable for
|
|
19
|
+
thumbnails/scrubbing. Adds `ExtractFramesOpts` + `FramesetManifest` types.
|
|
20
|
+
- `@maravilla-labs/frames`: video timeline slots now carry an optional
|
|
21
|
+
`frameset` key (the `extractFrames` manifest) exposed on
|
|
22
|
+
`window.__mvFrames.videos[]`; the renderer sets `window.__mvFramesNoVideoSeek`
|
|
23
|
+
on the begin-frame path so the helper leaves `<video>` inert (live-seeking it
|
|
24
|
+
crashes Chromium — crbug.com/40656275) while the worker swaps in pre-extracted
|
|
25
|
+
frames. Editor scrubbing + the screenshot/dev path keep live video seeking.
|
|
26
|
+
|
|
3
27
|
## 0.12.0
|
|
4
28
|
|
|
5
29
|
### Minor Changes
|
package/dist/config.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { T as TransformsConfig } from './transforms-
|
|
2
|
-
export { a as TransformsPatternSpec } from './transforms-
|
|
1
|
+
import { T as TransformsConfig } from './transforms-BHWez32E.js';
|
|
2
|
+
export { a as TransformsPatternSpec } from './transforms-BHWez32E.js';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* @fileoverview Typed schema for `maravilla.config.{ts,yaml,json}` files.
|
package/dist/index.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ export { ActAsContext, AddCircleMemberOptions, AddRelationOptions, ApiKeyInfo, A
|
|
|
3
3
|
export { b as RenClient, a as RenClientOptions, R as RenEvent, g as getOrCreateClientId, r as renFetch, c as storageDelete, s as storageUpload } from './ren-DetHRhCL.js';
|
|
4
4
|
import { LocalParticipant } from 'livekit-client';
|
|
5
5
|
export { RegisterPushOptions, RegisterPushResult, offsetBefore, registerPush, unregisterPush } from './push.js';
|
|
6
|
-
export {
|
|
6
|
+
export { D as DetachAudioOpts, h as DocConvertOpts, e as DocFormat, m as DocInsertQrCodeOpts, l as DocReplaceImagesOpts, o as DocTemplateMergeOpts, g as DocThumbnailOpts, j as DocToHtmlOpts, i as DocToMarkdownOpts, f as DocToPdfOpts, d as ExtractAudioOpts, E as ExtractFramesOpts, F as FramesetManifest, I as ImageFormat, k as ImageRef, q as JobHandle, J as JobStatus, r as JobStatusResponse, M as MediaInfo, O as OcrOpts, Q as QrCodeSpec, n as QrPayload, R as ResizeOpts, c as ThumbnailOpts, b as TranscodeOpts, p as TransformSpec, T as TransformsConfig, a as TransformsPatternSpec, s as TransformsService, V as VideoFormat, t as keyFor, u as transforms } from './transforms-BHWez32E.js';
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* Media service for video/audio room management.
|
package/dist/index.js
CHANGED
|
@@ -1097,6 +1097,12 @@ var RemoteTransformsService = class {
|
|
|
1097
1097
|
transcode(srcKey, opts) {
|
|
1098
1098
|
return this.post("/transcode", { srcKey, opts });
|
|
1099
1099
|
}
|
|
1100
|
+
extractFrames(srcKey, opts) {
|
|
1101
|
+
return this.post("/extract_frames", { srcKey, opts });
|
|
1102
|
+
}
|
|
1103
|
+
extractAudio(srcKey, opts) {
|
|
1104
|
+
return this.post("/extract_audio", { srcKey, opts: opts ?? {} });
|
|
1105
|
+
}
|
|
1100
1106
|
thumbnail(srcKey, opts) {
|
|
1101
1107
|
return this.post("/thumbnail", { srcKey, opts });
|
|
1102
1108
|
}
|
|
@@ -2010,6 +2016,10 @@ function outputExtension(spec) {
|
|
|
2010
2016
|
case "transcode":
|
|
2011
2017
|
return spec.format;
|
|
2012
2018
|
// 'mp4' | 'webm'
|
|
2019
|
+
case "extract_frames":
|
|
2020
|
+
return "json";
|
|
2021
|
+
case "extract_audio":
|
|
2022
|
+
return "m4a";
|
|
2013
2023
|
case "thumbnail":
|
|
2014
2024
|
case "resize": {
|
|
2015
2025
|
const fmt = spec.format ?? "jpg";
|