libbitsub 1.10.1 → 1.11.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.
Files changed (91) hide show
  1. package/LICENSE +1 -0
  2. package/README.md +186 -36
  3. package/dist/index.d.ts +1 -1
  4. package/dist/index.d.ts.map +1 -1
  5. package/dist/index.js +1 -1
  6. package/dist/index.js.map +1 -1
  7. package/dist/integrations/hlsjs.d.ts +45 -0
  8. package/dist/integrations/hlsjs.d.ts.map +1 -0
  9. package/dist/integrations/hlsjs.js +121 -0
  10. package/dist/integrations/hlsjs.js.map +1 -0
  11. package/dist/integrations/index.d.ts +11 -0
  12. package/dist/integrations/index.d.ts.map +1 -0
  13. package/dist/integrations/index.js +11 -0
  14. package/dist/integrations/index.js.map +1 -0
  15. package/dist/integrations/react.d.ts +55 -0
  16. package/dist/integrations/react.d.ts.map +1 -0
  17. package/dist/integrations/react.js +127 -0
  18. package/dist/integrations/react.js.map +1 -0
  19. package/dist/integrations/shaka.d.ts +38 -0
  20. package/dist/integrations/shaka.d.ts.map +1 -0
  21. package/dist/integrations/shaka.js +71 -0
  22. package/dist/integrations/shaka.js.map +1 -0
  23. package/dist/integrations/shared.d.ts +41 -0
  24. package/dist/integrations/shared.d.ts.map +1 -0
  25. package/dist/integrations/shared.js +123 -0
  26. package/dist/integrations/shared.js.map +1 -0
  27. package/dist/integrations/videojs.d.ts +85 -0
  28. package/dist/integrations/videojs.d.ts.map +1 -0
  29. package/dist/integrations/videojs.js +111 -0
  30. package/dist/integrations/videojs.js.map +1 -0
  31. package/dist/ts/diagnostics.d.ts.map +1 -1
  32. package/dist/ts/diagnostics.js.map +1 -1
  33. package/dist/ts/frame-export.d.ts.map +1 -1
  34. package/dist/ts/frame-export.js +4 -4
  35. package/dist/ts/frame-export.js.map +1 -1
  36. package/dist/ts/parsers.d.ts +7 -6
  37. package/dist/ts/parsers.d.ts.map +1 -1
  38. package/dist/ts/parsers.js +76 -13
  39. package/dist/ts/parsers.js.map +1 -1
  40. package/dist/ts/range-loader.d.ts +31 -0
  41. package/dist/ts/range-loader.d.ts.map +1 -0
  42. package/dist/ts/range-loader.js +220 -0
  43. package/dist/ts/range-loader.js.map +1 -0
  44. package/dist/ts/renderers.d.ts +14 -0
  45. package/dist/ts/renderers.d.ts.map +1 -1
  46. package/dist/ts/renderers.js +445 -162
  47. package/dist/ts/renderers.js.map +1 -1
  48. package/dist/ts/types.d.ts +51 -1
  49. package/dist/ts/types.d.ts.map +1 -1
  50. package/dist/ts/utils.d.ts.map +1 -1
  51. package/dist/ts/utils.js.map +1 -1
  52. package/dist/ts/wasm.d.ts +2 -0
  53. package/dist/ts/wasm.d.ts.map +1 -1
  54. package/dist/ts/wasm.js +12 -0
  55. package/dist/ts/wasm.js.map +1 -1
  56. package/dist/ts/webgl2-renderer.d.ts +9 -0
  57. package/dist/ts/webgl2-renderer.d.ts.map +1 -1
  58. package/dist/ts/webgl2-renderer.js +34 -0
  59. package/dist/ts/webgl2-renderer.js.map +1 -1
  60. package/dist/ts/webgpu-renderer.d.ts +9 -0
  61. package/dist/ts/webgpu-renderer.d.ts.map +1 -1
  62. package/dist/ts/webgpu-renderer.js +70 -2
  63. package/dist/ts/webgpu-renderer.js.map +1 -1
  64. package/dist/ts/worker.d.ts +11 -0
  65. package/dist/ts/worker.d.ts.map +1 -1
  66. package/dist/ts/worker.js +235 -160
  67. package/dist/ts/worker.js.map +1 -1
  68. package/dist/wrapper.d.ts +3 -1
  69. package/dist/wrapper.d.ts.map +1 -1
  70. package/dist/wrapper.js +2 -0
  71. package/dist/wrapper.js.map +1 -1
  72. package/examples/README.md +38 -0
  73. package/examples/hlsjs/README.md +53 -0
  74. package/examples/react/README.md +60 -0
  75. package/examples/shaka/README.md +61 -0
  76. package/examples/videojs/README.md +55 -0
  77. package/package.json +68 -12
  78. package/pkg/LICENSE +1 -0
  79. package/pkg/README.md +186 -36
  80. package/pkg/libbitsub.d.ts +14 -0
  81. package/pkg/libbitsub.js +50 -0
  82. package/pkg/libbitsub_bg.wasm +0 -0
  83. package/pkg/libbitsub_bg.wasm.d.ts +7 -0
  84. package/pkg/package.json +1 -1
  85. package/src/integrations/hlsjs.ts +154 -0
  86. package/src/integrations/index.ts +36 -0
  87. package/src/integrations/react.tsx +170 -0
  88. package/src/integrations/shaka.ts +92 -0
  89. package/src/integrations/shared.ts +170 -0
  90. package/src/integrations/videojs.ts +200 -0
  91. package/src/wrapper.ts +12 -0
@@ -0,0 +1,220 @@
1
+ const DEFAULT_RANGE_CHUNK_THRESHOLD = 2 * 1024 * 1024;
2
+ const DEFAULT_RANGE_CHUNK_SIZE = 512 * 1024;
3
+ function emitProgress(onProgress, loaded, total, rangeSupported, strategy) {
4
+ if (!onProgress)
5
+ return;
6
+ onProgress({
7
+ loaded,
8
+ total,
9
+ ratio: total && total > 0 ? Math.min(1, loaded / total) : null,
10
+ rangeSupported,
11
+ strategy
12
+ });
13
+ }
14
+ function parseContentLength(header) {
15
+ if (!header)
16
+ return null;
17
+ const value = Number(header);
18
+ return Number.isFinite(value) && value >= 0 ? value : null;
19
+ }
20
+ function parseContentRangeTotal(header) {
21
+ if (!header)
22
+ return null;
23
+ const match = /bytes\s+(?:\d+-\d+|\*)\/(\d+|\*)/i.exec(header);
24
+ if (!match)
25
+ return null;
26
+ if (match[1] === '*')
27
+ return null;
28
+ return parseContentLength(match[1]);
29
+ }
30
+ function mergeHeaders(base, extra) {
31
+ const headers = new Headers(base);
32
+ if (extra) {
33
+ const more = new Headers(extra);
34
+ more.forEach((value, key) => headers.set(key, value));
35
+ }
36
+ return headers;
37
+ }
38
+ export async function probeRangeSupport(url, options = {}) {
39
+ const headers = mergeHeaders(options.headers, { Range: 'bytes=0-0' });
40
+ try {
41
+ const response = await fetch(url, {
42
+ method: 'GET',
43
+ headers,
44
+ signal: options.signal
45
+ });
46
+ if (response.status === 206) {
47
+ const size = parseContentRangeTotal(response.headers.get('content-range')) ??
48
+ parseContentLength(response.headers.get('content-length'));
49
+ try {
50
+ await response.body?.cancel();
51
+ }
52
+ catch {
53
+ /* ignore */
54
+ }
55
+ return {
56
+ supportsRange: true,
57
+ size,
58
+ acceptRanges: response.headers.get('accept-ranges')
59
+ };
60
+ }
61
+ if (response.ok) {
62
+ const accept = response.headers.get('accept-ranges');
63
+ const size = parseContentLength(response.headers.get('content-length'));
64
+ try {
65
+ await response.body?.cancel();
66
+ }
67
+ catch {
68
+ /* ignore */
69
+ }
70
+ return {
71
+ supportsRange: Boolean(accept && accept.toLowerCase() !== 'none'),
72
+ size,
73
+ acceptRanges: accept
74
+ };
75
+ }
76
+ }
77
+ catch {
78
+ /* try HEAD */
79
+ }
80
+ try {
81
+ const head = await fetch(url, {
82
+ method: 'HEAD',
83
+ headers: mergeHeaders(options.headers),
84
+ signal: options.signal
85
+ });
86
+ if (!head.ok) {
87
+ return { supportsRange: false, size: null, acceptRanges: null };
88
+ }
89
+ const accept = head.headers.get('accept-ranges');
90
+ return {
91
+ supportsRange: Boolean(accept && accept.toLowerCase() !== 'none'),
92
+ size: parseContentLength(head.headers.get('content-length')),
93
+ acceptRanges: accept
94
+ };
95
+ }
96
+ catch {
97
+ return { supportsRange: false, size: null, acceptRanges: null };
98
+ }
99
+ }
100
+ async function readResponseStream(response, totalHint, rangeSupported, strategy, onProgress, onChunk) {
101
+ const total = totalHint ?? parseContentLength(response.headers.get('content-length'));
102
+ if (!response.body || typeof response.body.getReader !== 'function') {
103
+ const buffer = new Uint8Array(await response.arrayBuffer());
104
+ const progress = {
105
+ loaded: buffer.byteLength,
106
+ total: total ?? buffer.byteLength,
107
+ ratio: 1,
108
+ rangeSupported,
109
+ strategy: strategy === 'stream' ? 'basic' : strategy
110
+ };
111
+ await onChunk?.(buffer, progress);
112
+ onProgress?.(progress);
113
+ return buffer;
114
+ }
115
+ const reader = response.body.getReader();
116
+ const chunks = [];
117
+ let loaded = 0;
118
+ while (true) {
119
+ const { done, value } = await reader.read();
120
+ if (done)
121
+ break;
122
+ if (!value || value.byteLength === 0)
123
+ continue;
124
+ const chunk = value instanceof Uint8Array ? value : new Uint8Array(value);
125
+ chunks.push(chunk);
126
+ loaded += chunk.byteLength;
127
+ const progress = {
128
+ loaded,
129
+ total,
130
+ ratio: total && total > 0 ? Math.min(1, loaded / total) : null,
131
+ rangeSupported,
132
+ strategy
133
+ };
134
+ await onChunk?.(chunk, progress);
135
+ onProgress?.(progress);
136
+ }
137
+ const assembled = new Uint8Array(loaded);
138
+ let offset = 0;
139
+ for (const chunk of chunks) {
140
+ assembled.set(chunk, offset);
141
+ offset += chunk.byteLength;
142
+ }
143
+ emitProgress(onProgress, assembled.byteLength, total ?? assembled.byteLength, rangeSupported, strategy);
144
+ return assembled;
145
+ }
146
+ async function fetchByRangeChunks(url, size, options, onChunk) {
147
+ const chunkSize = Math.max(1, Math.floor(options.rangeChunkSize ?? DEFAULT_RANGE_CHUNK_SIZE));
148
+ const assembled = new Uint8Array(size);
149
+ let loaded = 0;
150
+ for (let start = 0; start < size; start += chunkSize) {
151
+ const end = Math.min(size - 1, start + chunkSize - 1);
152
+ const response = await fetch(url, {
153
+ method: 'GET',
154
+ headers: mergeHeaders(options.headers, { Range: `bytes=${start}-${end}` }),
155
+ signal: options.signal
156
+ });
157
+ if (response.status !== 206 && !(response.ok && start === 0 && end >= size - 1)) {
158
+ throw new Error(`Failed to fetch subtitle range ${start}-${end}: ${response.status}`);
159
+ }
160
+ const buffer = new Uint8Array(await response.arrayBuffer());
161
+ if (buffer.byteLength === 0) {
162
+ throw new Error(`Empty subtitle range response for bytes=${start}-${end}`);
163
+ }
164
+ if (start + buffer.byteLength > size) {
165
+ assembled.set(buffer.subarray(0, size - start), start);
166
+ loaded = size;
167
+ }
168
+ else {
169
+ assembled.set(buffer, start);
170
+ loaded = start + buffer.byteLength;
171
+ }
172
+ const slice = assembled.subarray(start, loaded);
173
+ const progress = {
174
+ loaded,
175
+ total: size,
176
+ ratio: size > 0 ? Math.min(1, loaded / size) : null,
177
+ rangeSupported: true,
178
+ strategy: 'range-chunks'
179
+ };
180
+ await onChunk?.(slice, progress);
181
+ options.onProgress?.(progress);
182
+ }
183
+ return assembled;
184
+ }
185
+ export async function fetchSubtitleAsset(url, options = {}, onChunk) {
186
+ const preferRange = options.preferRange !== false;
187
+ const threshold = options.rangeChunkThreshold ?? DEFAULT_RANGE_CHUNK_THRESHOLD;
188
+ let rangeSupported = false;
189
+ let knownSize = null;
190
+ if (preferRange) {
191
+ const probe = await probeRangeSupport(url, options);
192
+ rangeSupported = probe.supportsRange;
193
+ knownSize = probe.size;
194
+ if (rangeSupported && knownSize != null && knownSize >= threshold) {
195
+ const data = await fetchByRangeChunks(url, knownSize, options, onChunk);
196
+ return { data, strategy: 'range-chunks', rangeSupported: true, total: knownSize };
197
+ }
198
+ }
199
+ const response = await fetch(url, {
200
+ method: 'GET',
201
+ headers: mergeHeaders(options.headers),
202
+ signal: options.signal
203
+ });
204
+ if (!response.ok) {
205
+ throw new Error(`Failed to fetch subtitle: ${response.status}`);
206
+ }
207
+ const total = knownSize ?? parseContentLength(response.headers.get('content-length'));
208
+ const strategy = response.body ? 'stream' : 'basic';
209
+ const data = await readResponseStream(response, total, rangeSupported, strategy, options.onProgress, onChunk);
210
+ return { data, strategy, rangeSupported, total: total ?? data.byteLength };
211
+ }
212
+ export async function fetchSubtitleText(url, options = {}) {
213
+ const { data } = await fetchSubtitleAsset(url, {
214
+ ...options,
215
+ rangeChunkThreshold: Number.POSITIVE_INFINITY,
216
+ preferRange: false
217
+ });
218
+ return new TextDecoder('utf-8').decode(data);
219
+ }
220
+ //# sourceMappingURL=range-loader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"range-loader.js","sourceRoot":"","sources":["../../src/ts/range-loader.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@
3
3
  * Handles canvas overlay, video sync, and subtitle fetching.
4
4
  */
5
5
  import type { AutoVideoSubtitleOptions, SubtitleCacheStats, SubtitleCueMetadata, SubtitleData, SubtitleDiagnosticWarning, SubtitleDisplaySettings, SubtitleLastRenderInfo, SubtitleParserMetadata, SubtitleRendererBackend, SubtitleRendererEvent, VideoSubtitleOptions, VideoVobSubOptions, WorkerRendererState } from './types';
6
+ import { type AssetFetchProgress } from './range-loader';
6
7
  import { WebGPURenderer } from './webgpu-renderer';
7
8
  import { WebGL2Renderer } from './webgl2-renderer';
8
9
  interface SubtitleRenderLayout {
@@ -74,6 +75,8 @@ declare abstract class BaseVideoSubtitleRenderer {
74
75
  protected cacheLimit: number;
75
76
  protected prefetchBefore: number;
76
77
  protected prefetchAfter: number;
78
+ protected streamingLoad: boolean;
79
+ protected rangeRequests: boolean;
77
80
  protected onEvent?: (event: SubtitleRendererEvent) => void;
78
81
  protected onWarning?: (warning: SubtitleDiagnosticWarning) => void;
79
82
  protected currentRendererBackend: SubtitleRendererBackend | null;
@@ -96,6 +99,9 @@ declare abstract class BaseVideoSubtitleRenderer {
96
99
  lastFrameTime: number;
97
100
  };
98
101
  constructor(options: VideoSubtitleOptions, format: 'pgs' | 'vobsub');
102
+ protected emitLoadProgress(format: 'pgs' | 'vobsub', progress: AssetFetchProgress, indexedCues: number): void;
103
+ protected emitIndexed(format: 'pgs' | 'vobsub', metadata: SubtitleParserMetadata, partial: boolean): void;
104
+ protected memoryProgress(byteLength: number): AssetFetchProgress;
99
105
  /** Get current display settings */
100
106
  getDisplaySettings(): SubtitleDisplaySettings;
101
107
  /** Get performance statistics */
@@ -183,6 +189,9 @@ export declare class PgsRenderer extends BaseVideoSubtitleRenderer {
183
189
  private onError?;
184
190
  constructor(options: VideoSubtitleOptions);
185
191
  protected loadSubtitles(): Promise<void>;
192
+ private applyPgsIndexState;
193
+ private loadPgsBuffer;
194
+ private loadPgsStreaming;
186
195
  private loadOnMainThread;
187
196
  protected getWorkerRendererState(): WorkerRendererState;
188
197
  /** Yield to main thread to prevent UI blocking */
@@ -219,6 +228,11 @@ export declare class VobSubRenderer extends BaseVideoSubtitleRenderer {
219
228
  private pendingIndexLookup;
220
229
  constructor(options: VideoVobSubOptions);
221
230
  protected loadSubtitles(): Promise<void>;
231
+ private applyVobSubIndexState;
232
+ private ensureVobSubWorkerSession;
233
+ private loadVobSubBuffer;
234
+ private loadVobSubMksStreaming;
235
+ private loadVobSubIdxSubStreaming;
222
236
  private loadOnMainThread;
223
237
  protected getWorkerRendererState(): WorkerRendererState;
224
238
  /** Yield to main thread to prevent UI blocking */
@@ -1 +1 @@
1
- {"version":3,"file":"renderers.d.ts","sourceRoot":"","sources":["../../src/ts/renderers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"renderers.d.ts","sourceRoot":"","sources":["../../src/ts/renderers.ts"],"names":[],"mappings":"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"}