@omnimedia/omnitool 1.1.0-96 → 1.1.0-97

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/README.md CHANGED
@@ -207,6 +207,42 @@ Caption options:
207
207
 
208
208
  import `captionPresets` to list available caption looks.
209
209
 
210
+ ## 🧼 Background Remover
211
+
212
+ ```ts
213
+ import {makeBgRemover, defaultBgRemoverSpec} from "@omnimedia/omnitool"
214
+
215
+ const bgRemover = await makeBgRemover({
216
+ spec: defaultBgRemoverSpec(),
217
+ workerUrl: new URL("/features/bg-remover/worker.bundle.min.js", import.meta.url),
218
+ onLoading: loading => console.log("loading", loading),
219
+ })
220
+
221
+ const outputFrame = await bgRemover.remove({frame: inputFrame})
222
+
223
+ bgRemover.dispose()
224
+ ```
225
+
226
+ Use it on image or while decoding a video:
227
+
228
+ ```ts
229
+ const bgRemover = await makeBgRemover({
230
+ spec: defaultBgRemoverSpec(),
231
+ workerUrl: new URL("/features/bg-remover/worker.bundle.min.js", import.meta.url),
232
+ onLoading: loading => console.log("loading", loading),
233
+ })
234
+
235
+ const video = driver.decodeVideo({
236
+ source: file,
237
+ onFrame: frame => bgRemover.remove({frame}),
238
+ })
239
+ ```
240
+
241
+ Notes:
242
+ - `defaultBgRemoverSpec()` uses `Xenova/modnet` on `webgpu` with `auto` dtype.
243
+ - `model`, `device`, and `dtype` are passed to Transformers.js and depend on browser/runtime support.
244
+ - Call `dispose()` when the remover is no longer needed.
245
+
210
246
  ## 🎛 Filters
211
247
 
212
248
  Filter application:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@omnimedia/omnitool",
3
- "version": "1.1.0-96",
3
+ "version": "1.1.0-97",
4
4
  "description": "open source video processing tools",
5
5
  "license": "MIT",
6
6
  "author": "Przemysław Gałęzki",
@@ -12,6 +12,9 @@ export {captionPresets} from "./parts/captions.js"
12
12
  export * from "../features/speech/transcribe/default-spec.js"
13
13
  export * from "../features/speech/transcribe/transcriber.js"
14
14
  export * from "../features/speech/transcribe/types.js"
15
+ export * from "../features/bg-remover/default-spec.js"
16
+ export * from "../features/bg-remover/bg-remover.js"
17
+ export * from "../features/bg-remover/types.js"
15
18
 
16
19
  export * from "./parts/waveform/waveform.js"
17
20
  export * from "./parts/waveform/parts/types.js"