libbitsub 1.10.2 → 1.12.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/README.md +296 -49
- package/dist/index.d.ts +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/integrations/hlsjs.d.ts +45 -0
- package/dist/integrations/hlsjs.d.ts.map +1 -0
- package/dist/integrations/hlsjs.js +121 -0
- package/dist/integrations/hlsjs.js.map +1 -0
- package/dist/integrations/index.d.ts +11 -0
- package/dist/integrations/index.d.ts.map +1 -0
- package/dist/integrations/index.js +11 -0
- package/dist/integrations/index.js.map +1 -0
- package/dist/integrations/react.d.ts +55 -0
- package/dist/integrations/react.d.ts.map +1 -0
- package/dist/integrations/react.js +133 -0
- package/dist/integrations/react.js.map +1 -0
- package/dist/integrations/shaka.d.ts +38 -0
- package/dist/integrations/shaka.d.ts.map +1 -0
- package/dist/integrations/shaka.js +71 -0
- package/dist/integrations/shaka.js.map +1 -0
- package/dist/integrations/shared.d.ts +41 -0
- package/dist/integrations/shared.d.ts.map +1 -0
- package/dist/integrations/shared.js +123 -0
- package/dist/integrations/shared.js.map +1 -0
- package/dist/integrations/videojs.d.ts +85 -0
- package/dist/integrations/videojs.d.ts.map +1 -0
- package/dist/integrations/videojs.js +111 -0
- package/dist/integrations/videojs.js.map +1 -0
- package/dist/ts/capabilities.d.ts +8 -0
- package/dist/ts/capabilities.d.ts.map +1 -0
- package/dist/ts/capabilities.js +105 -0
- package/dist/ts/capabilities.js.map +1 -0
- package/dist/ts/diagnostics.d.ts.map +1 -1
- package/dist/ts/diagnostics.js.map +1 -1
- package/dist/ts/frame-export.d.ts.map +1 -1
- package/dist/ts/frame-export.js +4 -4
- package/dist/ts/frame-export.js.map +1 -1
- package/dist/ts/parsers.d.ts +46 -8
- package/dist/ts/parsers.d.ts.map +1 -1
- package/dist/ts/parsers.js +305 -14
- package/dist/ts/parsers.js.map +1 -1
- package/dist/ts/range-loader.d.ts +31 -0
- package/dist/ts/range-loader.d.ts.map +1 -0
- package/dist/ts/range-loader.js +220 -0
- package/dist/ts/range-loader.js.map +1 -0
- package/dist/ts/renderers.d.ts +140 -8
- package/dist/ts/renderers.d.ts.map +1 -1
- package/dist/ts/renderers.js +1773 -287
- package/dist/ts/renderers.js.map +1 -1
- package/dist/ts/types.d.ts +210 -7
- package/dist/ts/types.d.ts.map +1 -1
- package/dist/ts/utils.d.ts.map +1 -1
- package/dist/ts/utils.js +98 -2
- package/dist/ts/utils.js.map +1 -1
- package/dist/ts/video-frame-scheduler.d.ts +35 -0
- package/dist/ts/video-frame-scheduler.d.ts.map +1 -0
- package/dist/ts/video-frame-scheduler.js +98 -0
- package/dist/ts/video-frame-scheduler.js.map +1 -0
- package/dist/ts/wasm.d.ts +2 -0
- package/dist/ts/wasm.d.ts.map +1 -1
- package/dist/ts/wasm.js +12 -0
- package/dist/ts/wasm.js.map +1 -1
- package/dist/ts/webgl2-renderer.d.ts +9 -0
- package/dist/ts/webgl2-renderer.d.ts.map +1 -1
- package/dist/ts/webgl2-renderer.js +34 -0
- package/dist/ts/webgl2-renderer.js.map +1 -1
- package/dist/ts/webgpu-renderer.d.ts +9 -0
- package/dist/ts/webgpu-renderer.d.ts.map +1 -1
- package/dist/ts/webgpu-renderer.js +70 -2
- package/dist/ts/webgpu-renderer.js.map +1 -1
- package/dist/ts/worker.d.ts +11 -0
- package/dist/ts/worker.d.ts.map +1 -1
- package/dist/ts/worker.js +620 -158
- package/dist/ts/worker.js.map +1 -1
- package/dist/wrapper.d.ts +6 -3
- package/dist/wrapper.d.ts.map +1 -1
- package/dist/wrapper.js +5 -2
- package/dist/wrapper.js.map +1 -1
- package/examples/README.md +38 -0
- package/examples/hlsjs/README.md +53 -0
- package/examples/react/README.md +60 -0
- package/examples/shaka/README.md +61 -0
- package/examples/videojs/README.md +55 -0
- package/package.json +66 -8
- package/pkg/README.md +296 -49
- package/pkg/libbitsub.d.ts +65 -1
- package/pkg/libbitsub.js +228 -3
- package/pkg/libbitsub_bg.wasm +0 -0
- package/pkg/libbitsub_bg.wasm.d.ts +28 -0
- package/pkg/package.json +4 -4
- package/src/integrations/hlsjs.ts +154 -0
- package/src/integrations/index.ts +36 -0
- package/src/integrations/react.tsx +176 -0
- package/src/integrations/shaka.ts +92 -0
- package/src/integrations/shared.ts +171 -0
- package/src/integrations/videojs.ts +200 -0
- package/src/wrapper.ts +34 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/integrations/shared.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Optional Video.js plugin for libbitsub bitmap subtitles.
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* ```ts
|
|
6
|
+
* import videojs from 'video.js'
|
|
7
|
+
* import { registerBitSubPlugin } from 'libbitsub/videojs'
|
|
8
|
+
*
|
|
9
|
+
* registerBitSubPlugin(videojs)
|
|
10
|
+
* const player = videojs('my-video')
|
|
11
|
+
* player.bitsub({ subUrl: '/subs/movie.sup' })
|
|
12
|
+
* ```
|
|
13
|
+
*/
|
|
14
|
+
import { type AttachBitSubOptions, type BitSubController, type BitSubSourceOptions } from './shared';
|
|
15
|
+
/** Minimal Video.js surface used by the plugin (avoids a hard dependency). */
|
|
16
|
+
export interface VideoJsPlayerLike {
|
|
17
|
+
ready(callback: (this: this) => void): this;
|
|
18
|
+
el(): HTMLElement | null;
|
|
19
|
+
tech?: (asHtml?: boolean) => {
|
|
20
|
+
el?: () => HTMLElement | null;
|
|
21
|
+
} | HTMLElement | null | undefined;
|
|
22
|
+
on(type: string, handler: (...args: unknown[]) => void): this;
|
|
23
|
+
off?(type: string, handler: (...args: unknown[]) => void): this;
|
|
24
|
+
addClass?(className: string): void;
|
|
25
|
+
removeClass?(className: string): void;
|
|
26
|
+
trigger?(event: string, data?: unknown): void;
|
|
27
|
+
}
|
|
28
|
+
export interface VideoJsPluginBase {
|
|
29
|
+
player: VideoJsPlayerLike;
|
|
30
|
+
options_: unknown;
|
|
31
|
+
dispose(): void;
|
|
32
|
+
}
|
|
33
|
+
export interface VideoJsPluginConstructor {
|
|
34
|
+
new (player: VideoJsPlayerLike, options?: unknown): VideoJsPluginBase;
|
|
35
|
+
prototype: VideoJsPluginBase;
|
|
36
|
+
}
|
|
37
|
+
export interface VideoJsLike {
|
|
38
|
+
getPlugin(name: string): VideoJsPluginConstructor;
|
|
39
|
+
registerPlugin(name: string, plugin: unknown): void;
|
|
40
|
+
}
|
|
41
|
+
export type BitSubVideoJsOptions = AttachBitSubOptions;
|
|
42
|
+
export interface BitSubVideoJsApi {
|
|
43
|
+
/** Active controller, if any. */
|
|
44
|
+
controller(): BitSubController | null;
|
|
45
|
+
/** Load or replace the subtitle track. */
|
|
46
|
+
load(source: BitSubSourceOptions): void;
|
|
47
|
+
/** Clear the current track. */
|
|
48
|
+
clear(): void;
|
|
49
|
+
/** Dispose plugin-owned resources (also runs on player dispose). */
|
|
50
|
+
dispose(): void;
|
|
51
|
+
setDisplaySettings(settings: Parameters<BitSubController['setDisplaySettings']>[0]): void;
|
|
52
|
+
getDisplaySettings(): ReturnType<BitSubController['getDisplaySettings']>;
|
|
53
|
+
getStats(): ReturnType<BitSubController['getStats']>;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Register the `bitsub` Video.js plugin.
|
|
57
|
+
* Safe to call multiple times — subsequent calls are no-ops once registered.
|
|
58
|
+
*/
|
|
59
|
+
export declare function registerBitSubPlugin(videojs: VideoJsLike, pluginName?: string): void;
|
|
60
|
+
/**
|
|
61
|
+
* Ambient augmentation helper for apps using the default plugin name `bitsub`.
|
|
62
|
+
*
|
|
63
|
+
* @example
|
|
64
|
+
* ```ts
|
|
65
|
+
* import 'libbitsub/videojs' // side-effect free; types only when referenced
|
|
66
|
+
* // or in a global.d.ts:
|
|
67
|
+
* // import type {} from 'libbitsub/videojs'
|
|
68
|
+
* ```
|
|
69
|
+
*
|
|
70
|
+
* For full player typing, extend your video.js module:
|
|
71
|
+
* ```ts
|
|
72
|
+
* import type { BitSubVideoJsApi, BitSubVideoJsOptions } from 'libbitsub/videojs'
|
|
73
|
+
* declare module 'video.js' {
|
|
74
|
+
* interface VideoJsPlayer {
|
|
75
|
+
* bitsub(options?: BitSubVideoJsOptions): BitSubVideoJsApi
|
|
76
|
+
* }
|
|
77
|
+
* }
|
|
78
|
+
* ```
|
|
79
|
+
*/
|
|
80
|
+
export type VideoJsBitSubPlayer = VideoJsPlayerLike & {
|
|
81
|
+
bitsub(options?: BitSubVideoJsOptions): BitSubVideoJsApi;
|
|
82
|
+
};
|
|
83
|
+
export type { AttachBitSubOptions, BitSubController, BitSubSourceOptions, BitSubRenderer } from './shared';
|
|
84
|
+
export { attachBitSub, createBitSubRenderer } from './shared';
|
|
85
|
+
//# sourceMappingURL=videojs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"videojs.d.ts","sourceRoot":"","sources":["../../src/integrations/videojs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAgB,KAAK,mBAAmB,EAAE,KAAK,gBAAgB,EAAE,KAAK,mBAAmB,EAAE,MAAM,UAAU,CAAA;AAElH,8EAA8E;AAC9E,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,GAAG,IAAI,CAAA;IAC3C,EAAE,IAAI,WAAW,GAAG,IAAI,CAAA;IACxB,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,OAAO,KAAK;QAAE,EAAE,CAAC,EAAE,MAAM,WAAW,GAAG,IAAI,CAAA;KAAE,GAAG,WAAW,GAAG,IAAI,GAAG,SAAS,CAAA;IAC/F,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,GAAG,IAAI,CAAA;IAC7D,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,GAAG,IAAI,CAAA;IAC/D,QAAQ,CAAC,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IAClC,WAAW,CAAC,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACrC,OAAO,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,IAAI,CAAA;CAC9C;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,iBAAiB,CAAA;IACzB,QAAQ,EAAE,OAAO,CAAA;IACjB,OAAO,IAAI,IAAI,CAAA;CAChB;AAED,MAAM,WAAW,wBAAwB;IACvC,KAAK,MAAM,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,iBAAiB,CAAA;IACrE,SAAS,EAAE,iBAAiB,CAAA;CAC7B;AAED,MAAM,WAAW,WAAW;IAC1B,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,wBAAwB,CAAA;IACjD,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI,CAAA;CACpD;AAED,MAAM,MAAM,oBAAoB,GAAG,mBAAmB,CAAA;AAEtD,MAAM,WAAW,gBAAgB;IAC/B,iCAAiC;IACjC,UAAU,IAAI,gBAAgB,GAAG,IAAI,CAAA;IACrC,0CAA0C;IAC1C,IAAI,CAAC,MAAM,EAAE,mBAAmB,GAAG,IAAI,CAAA;IACvC,+BAA+B;IAC/B,KAAK,IAAI,IAAI,CAAA;IACb,oEAAoE;IACpE,OAAO,IAAI,IAAI,CAAA;IACf,kBAAkB,CAAC,QAAQ,EAAE,UAAU,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAA;IACzF,kBAAkB,IAAI,UAAU,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,CAAC,CAAA;IACxE,QAAQ,IAAI,UAAU,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAA;CACrD;AAgBD;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,WAAW,EAAE,UAAU,SAAW,GAAG,IAAI,CA8FtF;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,MAAM,mBAAmB,GAAG,iBAAiB,GAAG;IACpD,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,gBAAgB,CAAA;CACzD,CAAA;AAED,YAAY,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAC1G,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA"}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Optional Video.js plugin for libbitsub bitmap subtitles.
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* ```ts
|
|
6
|
+
* import videojs from 'video.js'
|
|
7
|
+
* import { registerBitSubPlugin } from 'libbitsub/videojs'
|
|
8
|
+
*
|
|
9
|
+
* registerBitSubPlugin(videojs)
|
|
10
|
+
* const player = videojs('my-video')
|
|
11
|
+
* player.bitsub({ subUrl: '/subs/movie.sup' })
|
|
12
|
+
* ```
|
|
13
|
+
*/
|
|
14
|
+
import { attachBitSub } from './shared';
|
|
15
|
+
function resolveVideoElement(player) {
|
|
16
|
+
const tech = typeof player.tech === 'function' ? player.tech(true) : undefined;
|
|
17
|
+
const techEl = tech && typeof tech.el === 'function'
|
|
18
|
+
? tech.el()
|
|
19
|
+
: tech;
|
|
20
|
+
if (techEl instanceof HTMLVideoElement)
|
|
21
|
+
return techEl;
|
|
22
|
+
const root = player.el();
|
|
23
|
+
if (!root)
|
|
24
|
+
return null;
|
|
25
|
+
return root.querySelector('video');
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Register the `bitsub` Video.js plugin.
|
|
29
|
+
* Safe to call multiple times — subsequent calls are no-ops once registered.
|
|
30
|
+
*/
|
|
31
|
+
export function registerBitSubPlugin(videojs, pluginName = 'bitsub') {
|
|
32
|
+
const existing = typeof videojs.getPlugin === 'function' ? videojs.getPlugin(pluginName) : undefined;
|
|
33
|
+
// Only skip when a previous registerBitSubPlugin call marked the plugin.
|
|
34
|
+
if (existing && existing.__libbitsubPlugin) {
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
const Plugin = videojs.getPlugin('plugin');
|
|
38
|
+
class BitSubPlugin extends Plugin {
|
|
39
|
+
controllerRef = null;
|
|
40
|
+
onDispose;
|
|
41
|
+
onLoadedData;
|
|
42
|
+
initialOptions;
|
|
43
|
+
constructor(player, options = {}) {
|
|
44
|
+
super(player, options);
|
|
45
|
+
this.initialOptions = options;
|
|
46
|
+
this.onDispose = () => this.disposeController();
|
|
47
|
+
this.onLoadedData = () => this.ensureController(this.initialOptions, false);
|
|
48
|
+
player.ready(() => {
|
|
49
|
+
this.ensureController(options, true);
|
|
50
|
+
player.on('loadeddata', this.onLoadedData);
|
|
51
|
+
player.on('dispose', this.onDispose);
|
|
52
|
+
player.addClass?.('vjs-bitsub');
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
controller() {
|
|
56
|
+
return this.controllerRef;
|
|
57
|
+
}
|
|
58
|
+
load(source) {
|
|
59
|
+
const controller = this.ensureController({}, false);
|
|
60
|
+
controller.load(source);
|
|
61
|
+
this.player.trigger?.('bitsubload', source);
|
|
62
|
+
}
|
|
63
|
+
clear() {
|
|
64
|
+
this.controllerRef?.clear();
|
|
65
|
+
this.player.trigger?.('bitsubclear');
|
|
66
|
+
}
|
|
67
|
+
setDisplaySettings(settings) {
|
|
68
|
+
this.controllerRef?.setDisplaySettings(settings);
|
|
69
|
+
}
|
|
70
|
+
getDisplaySettings() {
|
|
71
|
+
return this.controllerRef?.getDisplaySettings() ?? null;
|
|
72
|
+
}
|
|
73
|
+
getStats() {
|
|
74
|
+
return this.controllerRef?.getStats() ?? null;
|
|
75
|
+
}
|
|
76
|
+
dispose() {
|
|
77
|
+
this.player.off?.('loadeddata', this.onLoadedData);
|
|
78
|
+
this.player.off?.('dispose', this.onDispose);
|
|
79
|
+
this.player.removeClass?.('vjs-bitsub');
|
|
80
|
+
this.disposeController();
|
|
81
|
+
super.dispose();
|
|
82
|
+
}
|
|
83
|
+
disposeController() {
|
|
84
|
+
this.controllerRef?.dispose();
|
|
85
|
+
this.controllerRef = null;
|
|
86
|
+
}
|
|
87
|
+
ensureController(options, allowAutoload) {
|
|
88
|
+
const video = resolveVideoElement(this.player);
|
|
89
|
+
if (!video) {
|
|
90
|
+
throw new Error('libbitsub Video.js plugin could not resolve an HTMLVideoElement');
|
|
91
|
+
}
|
|
92
|
+
if (this.controllerRef && !this.controllerRef.disposed) {
|
|
93
|
+
if (this.controllerRef.video !== video) {
|
|
94
|
+
this.controllerRef.setVideo(video);
|
|
95
|
+
}
|
|
96
|
+
return this.controllerRef;
|
|
97
|
+
}
|
|
98
|
+
const { autoLoad = true, ...source } = options;
|
|
99
|
+
this.controllerRef = attachBitSub(video, {
|
|
100
|
+
...source,
|
|
101
|
+
autoLoad: allowAutoload ? autoLoad : false
|
|
102
|
+
});
|
|
103
|
+
return this.controllerRef;
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
;
|
|
107
|
+
BitSubPlugin.__libbitsubPlugin = true;
|
|
108
|
+
videojs.registerPlugin(pluginName, BitSubPlugin);
|
|
109
|
+
}
|
|
110
|
+
export { attachBitSub, createBitSubRenderer } from './shared';
|
|
111
|
+
//# sourceMappingURL=videojs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"videojs.js","sourceRoot":"","sources":["../../src/integrations/videojs.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { RuntimeCapabilities } from './types';
|
|
2
|
+
export declare function isOffscreenCanvasSupported(): boolean;
|
|
3
|
+
export declare function isTransferControlToOffscreenSupported(): boolean;
|
|
4
|
+
export declare function isOffscreenCanvas2DSupported(): boolean;
|
|
5
|
+
export declare function isCanvas2DSupported(offscreenCanvas2d?: boolean): boolean;
|
|
6
|
+
export declare function canUseWorkerOffscreenRender(): boolean;
|
|
7
|
+
export declare function getRuntimeCapabilities(): RuntimeCapabilities;
|
|
8
|
+
//# sourceMappingURL=capabilities.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../../src/ts/capabilities.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,mBAAmB,EAAuB,MAAM,SAAS,CAAA;AAEvE,wBAAgB,0BAA0B,IAAI,OAAO,CAEpD;AAED,wBAAgB,qCAAqC,IAAI,OAAO,CAU/D;AAED,wBAAgB,4BAA4B,IAAI,OAAO,CAWtD;AAED,wBAAgB,mBAAmB,CAAC,iBAAiB,GAAE,OAAwC,GAAG,OAAO,CASxG;AAED,wBAAgB,2BAA2B,IAAI,OAAO,CAOrD;AAuDD,wBAAgB,sBAAsB,IAAI,mBAAmB,CAyB5D"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import { isWorkerAvailable } from './worker';
|
|
2
|
+
import { isWebGPUSupported } from './webgpu-renderer';
|
|
3
|
+
import { isWebGL2Supported } from './webgl2-renderer';
|
|
4
|
+
export function isOffscreenCanvasSupported() {
|
|
5
|
+
return typeof OffscreenCanvas !== 'undefined';
|
|
6
|
+
}
|
|
7
|
+
export function isTransferControlToOffscreenSupported() {
|
|
8
|
+
return (typeof HTMLCanvasElement !== 'undefined' &&
|
|
9
|
+
typeof HTMLCanvasElement.prototype === 'object' &&
|
|
10
|
+
typeof HTMLCanvasElement.prototype.transferControlToOffscreen === 'function');
|
|
11
|
+
}
|
|
12
|
+
export function isOffscreenCanvas2DSupported() {
|
|
13
|
+
if (typeof OffscreenCanvas !== 'undefined') {
|
|
14
|
+
try {
|
|
15
|
+
const canvas = new OffscreenCanvas(1, 1);
|
|
16
|
+
return !!canvas.getContext('2d');
|
|
17
|
+
}
|
|
18
|
+
catch {
|
|
19
|
+
return false;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
return false;
|
|
23
|
+
}
|
|
24
|
+
export function isCanvas2DSupported(offscreenCanvas2d = isOffscreenCanvas2DSupported()) {
|
|
25
|
+
if (offscreenCanvas2d)
|
|
26
|
+
return true;
|
|
27
|
+
if (typeof document === 'undefined')
|
|
28
|
+
return false;
|
|
29
|
+
try {
|
|
30
|
+
return !!document.createElement('canvas').getContext('2d');
|
|
31
|
+
}
|
|
32
|
+
catch {
|
|
33
|
+
return false;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
export function canUseWorkerOffscreenRender() {
|
|
37
|
+
return (isWorkerAvailable() &&
|
|
38
|
+
isOffscreenCanvasSupported() &&
|
|
39
|
+
isTransferControlToOffscreenSupported() &&
|
|
40
|
+
isOffscreenCanvas2DSupported());
|
|
41
|
+
}
|
|
42
|
+
function resolvePreferredPresentPath(capabilities) {
|
|
43
|
+
const reasons = [];
|
|
44
|
+
if (capabilities.webgpu) {
|
|
45
|
+
return { preferredPresentPath: 'main-webgpu', reasons };
|
|
46
|
+
}
|
|
47
|
+
reasons.push('WebGPU unavailable.');
|
|
48
|
+
if (capabilities.webgl2) {
|
|
49
|
+
return { preferredPresentPath: 'main-webgl2', reasons };
|
|
50
|
+
}
|
|
51
|
+
reasons.push('WebGL2 unavailable.');
|
|
52
|
+
if (capabilities.workerOffscreenRender) {
|
|
53
|
+
return { preferredPresentPath: 'worker-offscreen', reasons };
|
|
54
|
+
}
|
|
55
|
+
if (!capabilities.worker) {
|
|
56
|
+
reasons.push('Worker unavailable; parse/decode stays on the main thread when possible.');
|
|
57
|
+
}
|
|
58
|
+
if (!capabilities.offscreenCanvas) {
|
|
59
|
+
reasons.push('OffscreenCanvas unavailable.');
|
|
60
|
+
}
|
|
61
|
+
if (!capabilities.transferControlToOffscreen) {
|
|
62
|
+
reasons.push('transferControlToOffscreen unavailable; cannot move canvas present into a Worker.');
|
|
63
|
+
}
|
|
64
|
+
if (capabilities.worker &&
|
|
65
|
+
capabilities.offscreenCanvas &&
|
|
66
|
+
capabilities.transferControlToOffscreen &&
|
|
67
|
+
!capabilities.offscreenCanvas2d) {
|
|
68
|
+
reasons.push('OffscreenCanvas 2D context unavailable; Worker presentation requires Canvas2D in the Worker.');
|
|
69
|
+
}
|
|
70
|
+
reasons.push('Worker OffscreenCanvas present path unavailable; composition uses the transfer or main-thread Canvas2D path.');
|
|
71
|
+
if (capabilities.canvas2d) {
|
|
72
|
+
return { preferredPresentPath: 'main-canvas2d', reasons };
|
|
73
|
+
}
|
|
74
|
+
reasons.push('Canvas2D unavailable.');
|
|
75
|
+
if (!capabilities.createImageBitmap) {
|
|
76
|
+
reasons.push('createImageBitmap unavailable (export helpers may be limited).');
|
|
77
|
+
}
|
|
78
|
+
reasons.push('No canvas present backend detected.');
|
|
79
|
+
return { preferredPresentPath: 'main-thread', reasons };
|
|
80
|
+
}
|
|
81
|
+
export function getRuntimeCapabilities() {
|
|
82
|
+
const worker = isWorkerAvailable();
|
|
83
|
+
const offscreenCanvas = isOffscreenCanvasSupported();
|
|
84
|
+
const transferControlToOffscreen = isTransferControlToOffscreenSupported();
|
|
85
|
+
const offscreenCanvas2d = isOffscreenCanvas2DSupported();
|
|
86
|
+
const webgpu = isWebGPUSupported();
|
|
87
|
+
const webgl2 = isWebGL2Supported();
|
|
88
|
+
const canvas2d = isCanvas2DSupported(offscreenCanvas2d);
|
|
89
|
+
const createImageBitmap = typeof globalThis.createImageBitmap === 'function';
|
|
90
|
+
const workerOffscreenRender = worker && offscreenCanvas && transferControlToOffscreen && offscreenCanvas2d;
|
|
91
|
+
const base = {
|
|
92
|
+
worker,
|
|
93
|
+
offscreenCanvas,
|
|
94
|
+
transferControlToOffscreen,
|
|
95
|
+
offscreenCanvas2d,
|
|
96
|
+
workerOffscreenRender,
|
|
97
|
+
webgpu,
|
|
98
|
+
webgl2,
|
|
99
|
+
canvas2d,
|
|
100
|
+
createImageBitmap
|
|
101
|
+
};
|
|
102
|
+
const { preferredPresentPath, reasons } = resolvePreferredPresentPath(base);
|
|
103
|
+
return { ...base, preferredPresentPath, reasons };
|
|
104
|
+
}
|
|
105
|
+
//# sourceMappingURL=capabilities.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../../src/ts/capabilities.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diagnostics.d.ts","sourceRoot":"","sources":["../../src/ts/diagnostics.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,6BAA6B,EAC7B,2BAA2B,EAC3B,2BAA2B,EAC3B,yBAAyB,EACzB,6BAA6B,EAC7B,kBAAkB,EACnB,MAAM,SAAS,CAAA;AAEhB,UAAU,yBAAyB;IACjC,MAAM,CAAC,EAAE,kBAAkB,CAAA;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,6BAA6B,CAAC,CAAA;IACvD,YAAY,CAAC,EAAE,2BAA2B,CAAA;CAC3C;AAED,qBAAa,uBAAwB,SAAQ,KAAM,YAAW,2BAA2B;IACvF,QAAQ,CAAC,IAAI,EAAE,2BAA2B,CAAA;IAC1C,QAAQ,CAAC,MAAM,CAAC,EAAE,kBAAkB,CAAA;IACpC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,6BAA6B,CAAC,CAAA;IAChE,SAAkB,KAAK,CAAC,EAAE,OAAO,CAAA;IAEjC,YACE,IAAI,EAAE,2BAA2B,EACjC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE;QACP,MAAM,CAAC,EAAE,kBAAkB,CAAA;QAC3B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,6BAA6B,CAAC,CAAA;QACvD,KAAK,CAAC,EAAE,OAAO,CAAA;KACX,EAQP;CACF;AAED,wBAAgB,6BAA6B,CAC3C,IAAI,EAAE,2BAA2B,EACjC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE;IACP,MAAM,CAAC,EAAE,kBAAkB,CAAA;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,6BAA6B,CAAC,CAAA;IACvD,KAAK,CAAC,EAAE,OAAO,CAAA;CACX,GACL,uBAAuB,CAEzB;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,OAAO,EACd,OAAO,GAAE,yBAA8B,GACtC,uBAAuB,CAazB;AAED,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,6BAA6B,EACnC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE;IACP,MAAM,CAAC,EAAE,kBAAkB,CAAA;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,6BAA6B,CAAC,CAAA;CACnD,GACL,yBAAyB,CAQ3B;AAED,wBAAgB,sBAAsB,CACpC,WAAW,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACtC,OAAO,GAAE;IACP,MAAM,CAAC,EAAE,kBAAkB,CAAA;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAA;CACb,GACL,yBAAyB,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"diagnostics.d.ts","sourceRoot":"","sources":["../../src/ts/diagnostics.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,6BAA6B,EAC7B,2BAA2B,EAC3B,2BAA2B,EAC3B,yBAAyB,EACzB,6BAA6B,EAC7B,kBAAkB,EACnB,MAAM,SAAS,CAAA;AAEhB,UAAU,yBAAyB;IACjC,MAAM,CAAC,EAAE,kBAAkB,CAAA;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,6BAA6B,CAAC,CAAA;IACvD,YAAY,CAAC,EAAE,2BAA2B,CAAA;CAC3C;AAED,qBAAa,uBAAwB,SAAQ,KAAM,YAAW,2BAA2B;IACvF,QAAQ,CAAC,IAAI,EAAE,2BAA2B,CAAA;IAC1C,QAAQ,CAAC,MAAM,CAAC,EAAE,kBAAkB,CAAA;IACpC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,6BAA6B,CAAC,CAAA;IAChE,SAAkB,KAAK,CAAC,EAAE,OAAO,CAAA;IAEjC,YACE,IAAI,EAAE,2BAA2B,EACjC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE;QACP,MAAM,CAAC,EAAE,kBAAkB,CAAA;QAC3B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,6BAA6B,CAAC,CAAA;QACvD,KAAK,CAAC,EAAE,OAAO,CAAA;KACX,EAQP;CACF;AAED,wBAAgB,6BAA6B,CAC3C,IAAI,EAAE,2BAA2B,EACjC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE;IACP,MAAM,CAAC,EAAE,kBAAkB,CAAA;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,6BAA6B,CAAC,CAAA;IACvD,KAAK,CAAC,EAAE,OAAO,CAAA;CACX,GACL,uBAAuB,CAEzB;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,OAAO,EACd,OAAO,GAAE,yBAA8B,GACtC,uBAAuB,CAazB;AAED,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,6BAA6B,EACnC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE;IACP,MAAM,CAAC,EAAE,kBAAkB,CAAA;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,6BAA6B,CAAC,CAAA;CACnD,GACL,yBAAyB,CAQ3B;AAED,wBAAgB,sBAAsB,CACpC,WAAW,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACtC,OAAO,GAAE;IACP,MAAM,CAAC,EAAE,kBAAkB,CAAA;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAA;CACb,GACL,yBAAyB,GAAG,IAAI,CAwClC;AAED,wBAAgB,+BAA+B,CAAC,OAAO,EAAE,yBAAyB,GAAG,MAAM,CAE1F"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../../src/ts/diagnostics.ts"],"names":[],"mappings":"AAeA,MAAM,OAAO,uBAAwB,SAAQ,KAAK;IACvC,IAAI,CAA6B;IACjC,MAAM,CAAqB;IAC3B,OAAO,CAAgD;IAC9C,KAAK,CAAU;IAEjC,YACE,IAAiC,EACjC,OAAe,EACf,OAAO,GAIH,EAAE;QAEN,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAA;QACrC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAA;QAC5B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAA;QAC9B,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAA;IAC5B,CAAC;CACF;AAED,MAAM,UAAU,6BAA6B,CAC3C,IAAiC,EACjC,OAAe,EACf,OAAO,GAIH,EAAE;IAEN,OAAO,IAAI,uBAAuB,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;AAC5D,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,KAAc,EACd,OAAO,GAA8B,EAAE;IAEvC,IAAI,KAAK,YAAY,uBAAuB,EAAE,CAAC;QAC7C,OAAO,KAAK,CAAA;IACd,CAAC;IAED,MAAM,aAAa,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;IAC/E,MAAM,IAAI,GAAG,gCAAgC,CAAC,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,YAAY,CAAC,CAAA;IAE1F,OAAO,IAAI,uBAAuB,CAAC,IAAI,EAAE,aAAa,CAAC,OAAO,EAAE;QAC9D,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,KAAK,EAAE,KAAK;KACb,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,IAAmC,EACnC,OAAe,EACf,OAAO,GAIH,EAAE;IAEN,OAAO;QACL,IAAI;QACJ,OAAO;QACP,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,OAAO,EAAE,OAAO,CAAC,OAAO;KACzB,CAAA;AACH,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,WAAsC,EACtC,OAAO,GAGH,EAAE;IAEN,MAAM,eAAe,GAAG,WAAW,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IACzD,IAAI,CAAC,eAAe;QAAE,OAAO,IAAI,CAAA;IAEjC,QAAQ,eAAe,EAAE,CAAC;QACxB,KAAK,iBAAiB;YACpB,OAAO,qBAAqB,
|
|
1
|
+
{"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../../src/ts/diagnostics.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frame-export.d.ts","sourceRoot":"","sources":["../../src/ts/frame-export.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,0BAA0B,EAC1B,yBAAyB,EAEzB,0BAA0B,EAC1B,yBAAyB,EAC1B,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"frame-export.d.ts","sourceRoot":"","sources":["../../src/ts/frame-export.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,0BAA0B,EAC1B,yBAAyB,EAEzB,0BAA0B,EAC1B,yBAAyB,EAC1B,MAAM,SAAS,CAAA;AAsJhB,wBAAgB,eAAe,CAC7B,KAAK,EAAE,YAAY,EACnB,OAAO,GAAE,0BAA+B,GACvC,yBAAyB,GAAG,IAAI,CAoDlC;AAED,wBAAgB,QAAQ,CACtB,KAAK,EAAE,YAAY,GAAG,yBAAyB,EAC/C,MAAM,CAAC,EAAE,yBAAyB,EAClC,OAAO,GAAE,0BAA+B,GACvC,iBAAiB,GAAG,eAAe,CAyCrC;AAED,wBAAsB,aAAa,CACjC,KAAK,EAAE,YAAY,GAAG,yBAAyB,EAC/C,OAAO,GAAE,0BAA+B,GACvC,OAAO,CAAC,WAAW,CAAC,CAqBtB;AAED,wBAAsB,MAAM,CAC1B,KAAK,EAAE,YAAY,GAAG,yBAAyB,EAC/C,IAAI,GAAE,MAAoB,EAC1B,OAAO,CAAC,EAAE,MAAM,EAChB,OAAO,GAAE,0BAA+B,GACvC,OAAO,CAAC,IAAI,CAAC,CA6Bf"}
|
package/dist/ts/frame-export.js
CHANGED
|
@@ -114,10 +114,10 @@ export function renderFrameData(frame, options = {}) {
|
|
|
114
114
|
if (!bounds && crop === 'bounds') {
|
|
115
115
|
return null;
|
|
116
116
|
}
|
|
117
|
-
const offsetX = crop === 'screen' ? 0 : bounds?.x ?? 0;
|
|
118
|
-
const offsetY = crop === 'screen' ? 0 : bounds?.y ?? 0;
|
|
119
|
-
const targetWidth = Math.max(1, crop === 'screen' ? frame.width : bounds?.width ?? 1);
|
|
120
|
-
const targetHeight = Math.max(1, crop === 'screen' ? frame.height : bounds?.height ?? 1);
|
|
117
|
+
const offsetX = crop === 'screen' ? 0 : (bounds?.x ?? 0);
|
|
118
|
+
const offsetY = crop === 'screen' ? 0 : (bounds?.y ?? 0);
|
|
119
|
+
const targetWidth = Math.max(1, crop === 'screen' ? frame.width : (bounds?.width ?? 1));
|
|
120
|
+
const targetHeight = Math.max(1, crop === 'screen' ? frame.height : (bounds?.height ?? 1));
|
|
121
121
|
const output = new Uint8ClampedArray(targetWidth * targetHeight * 4);
|
|
122
122
|
for (const composition of frame.compositionData) {
|
|
123
123
|
const src = composition.pixelData.data;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frame-export.js","sourceRoot":"","sources":["../../src/ts/frame-export.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"frame-export.js","sourceRoot":"","sources":["../../src/ts/frame-export.ts"],"names":[],"mappings":"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"}
|
package/dist/ts/parsers.d.ts
CHANGED
|
@@ -14,10 +14,11 @@ export declare class PgsParser {
|
|
|
14
14
|
private readonly debug;
|
|
15
15
|
private readonly onWarning?;
|
|
16
16
|
constructor(options?: SubtitleDiagnosticsOptions);
|
|
17
|
-
/**
|
|
18
|
-
* Load PGS subtitle data from a Uint8Array.
|
|
19
|
-
*/
|
|
20
17
|
load(data: Uint8Array): number;
|
|
18
|
+
reset(): void;
|
|
19
|
+
feed(data: Uint8Array): number;
|
|
20
|
+
finishFeed(): number;
|
|
21
|
+
get pendingLen(): number;
|
|
21
22
|
/**
|
|
22
23
|
* Get all timestamps in milliseconds.
|
|
23
24
|
*/
|
|
@@ -65,6 +66,39 @@ export declare class PgsParser {
|
|
|
65
66
|
dispose(): void;
|
|
66
67
|
private emitWarning;
|
|
67
68
|
}
|
|
69
|
+
/**
|
|
70
|
+
* Low-level DVB subtitle parser using WASM.
|
|
71
|
+
* Use this for programmatic access to DVB data without video integration.
|
|
72
|
+
*/
|
|
73
|
+
export declare class DvbParser {
|
|
74
|
+
private parser;
|
|
75
|
+
private timestamps;
|
|
76
|
+
private endTimestamps;
|
|
77
|
+
private cueMetadataCache;
|
|
78
|
+
private readonly debug;
|
|
79
|
+
private readonly onWarning?;
|
|
80
|
+
constructor(options?: SubtitleDiagnosticsOptions);
|
|
81
|
+
load(data: Uint8Array): number;
|
|
82
|
+
reset(): void;
|
|
83
|
+
feed(data: Uint8Array): number;
|
|
84
|
+
finishFeed(): number;
|
|
85
|
+
get pendingLen(): number;
|
|
86
|
+
getTimestamps(): Float64Array;
|
|
87
|
+
getEndTimestamps(): Float64Array;
|
|
88
|
+
get count(): number;
|
|
89
|
+
findIndexAtTimestamp(timeSeconds: number): number;
|
|
90
|
+
renderAtIndex(index: number): SubtitleData | undefined;
|
|
91
|
+
getLastRenderIssue(): string | null;
|
|
92
|
+
getMetadata(): SubtitleParserMetadata;
|
|
93
|
+
getCueMetadata(index: number): SubtitleCueMetadata | null;
|
|
94
|
+
renderAtTimestamp(timeSeconds: number): SubtitleData | undefined;
|
|
95
|
+
renderFrameDataAtIndex(index: number, options?: SubtitleFrameRenderOptions): SubtitleRenderedFrameData | undefined;
|
|
96
|
+
renderFrameDataAtTimestamp(timeSeconds: number, options?: SubtitleFrameRenderOptions): SubtitleRenderedFrameData | undefined;
|
|
97
|
+
private convertFrame;
|
|
98
|
+
clearCache(): void;
|
|
99
|
+
dispose(): void;
|
|
100
|
+
private emitWarning;
|
|
101
|
+
}
|
|
68
102
|
/**
|
|
69
103
|
* Low-level VobSub subtitle parser using WASM.
|
|
70
104
|
* Use this for programmatic access to VobSub data without video integration.
|
|
@@ -76,10 +110,10 @@ export declare class VobSubParserLowLevel {
|
|
|
76
110
|
private readonly debug;
|
|
77
111
|
private readonly onWarning?;
|
|
78
112
|
constructor(options?: SubtitleDiagnosticsOptions);
|
|
79
|
-
/**
|
|
80
|
-
* Load VobSub from IDX and SUB data.
|
|
81
|
-
*/
|
|
82
113
|
loadFromData(idxContent: string, subData: Uint8Array): void;
|
|
114
|
+
loadFromIdx(idxContent: string): void;
|
|
115
|
+
attachSubData(subData: Uint8Array): void;
|
|
116
|
+
get hasSubData(): boolean;
|
|
83
117
|
/**
|
|
84
118
|
* Load VobSub from SUB file only.
|
|
85
119
|
*/
|
|
@@ -152,7 +186,7 @@ export declare class VobSubParserLowLevel {
|
|
|
152
186
|
private emitWarning;
|
|
153
187
|
}
|
|
154
188
|
/**
|
|
155
|
-
* Unified subtitle parser that handles
|
|
189
|
+
* Unified subtitle parser that handles PGS, VobSub, and DVB formats.
|
|
156
190
|
*/
|
|
157
191
|
export declare class UnifiedSubtitleParser {
|
|
158
192
|
private renderer;
|
|
@@ -165,6 +199,10 @@ export declare class UnifiedSubtitleParser {
|
|
|
165
199
|
* Load PGS subtitle data.
|
|
166
200
|
*/
|
|
167
201
|
loadPgs(data: Uint8Array): number;
|
|
202
|
+
/**
|
|
203
|
+
* Load DVB subtitle data (`"DV"` framed and/or MPEG PES).
|
|
204
|
+
*/
|
|
205
|
+
loadDvb(data: Uint8Array): number;
|
|
168
206
|
/**
|
|
169
207
|
* Load VobSub from IDX and SUB data.
|
|
170
208
|
*/
|
|
@@ -182,7 +220,7 @@ export declare class UnifiedSubtitleParser {
|
|
|
182
220
|
/**
|
|
183
221
|
* Get the current subtitle format.
|
|
184
222
|
*/
|
|
185
|
-
get format():
|
|
223
|
+
get format(): SubtitleFormatName | null;
|
|
186
224
|
/**
|
|
187
225
|
* Get all timestamps in milliseconds.
|
|
188
226
|
*/
|
package/dist/ts/parsers.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parsers.d.ts","sourceRoot":"","sources":["../../src/ts/parsers.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,kBAAkB,EAClB,eAAe,EACf,0BAA0B,EAC1B,YAAY,EAEZ,mBAAmB,EAEnB,0BAA0B,EAC1B,yBAAyB,EACzB,sBAAsB,EAEtB,kBAAkB,
|
|
1
|
+
{"version":3,"file":"parsers.d.ts","sourceRoot":"","sources":["../../src/ts/parsers.ts"],"names":[],"mappings":"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"}
|