libbitsub 1.11.0 → 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.
Files changed (49) hide show
  1. package/README.md +113 -16
  2. package/dist/index.d.ts +3 -3
  3. package/dist/index.d.ts.map +1 -1
  4. package/dist/index.js +3 -3
  5. package/dist/index.js.map +1 -1
  6. package/dist/integrations/react.d.ts.map +1 -1
  7. package/dist/integrations/react.js +7 -1
  8. package/dist/integrations/react.js.map +1 -1
  9. package/dist/integrations/shared.d.ts +2 -2
  10. package/dist/integrations/shared.d.ts.map +1 -1
  11. package/dist/integrations/shared.js.map +1 -1
  12. package/dist/ts/capabilities.d.ts +8 -0
  13. package/dist/ts/capabilities.d.ts.map +1 -0
  14. package/dist/ts/capabilities.js +105 -0
  15. package/dist/ts/capabilities.js.map +1 -0
  16. package/dist/ts/parsers.d.ts +39 -2
  17. package/dist/ts/parsers.d.ts.map +1 -1
  18. package/dist/ts/parsers.js +229 -1
  19. package/dist/ts/parsers.js.map +1 -1
  20. package/dist/ts/renderers.d.ts +128 -10
  21. package/dist/ts/renderers.d.ts.map +1 -1
  22. package/dist/ts/renderers.js +1341 -138
  23. package/dist/ts/renderers.js.map +1 -1
  24. package/dist/ts/types.d.ts +159 -6
  25. package/dist/ts/types.d.ts.map +1 -1
  26. package/dist/ts/utils.d.ts.map +1 -1
  27. package/dist/ts/utils.js +98 -2
  28. package/dist/ts/utils.js.map +1 -1
  29. package/dist/ts/video-frame-scheduler.d.ts +35 -0
  30. package/dist/ts/video-frame-scheduler.d.ts.map +1 -0
  31. package/dist/ts/video-frame-scheduler.js +98 -0
  32. package/dist/ts/video-frame-scheduler.js.map +1 -0
  33. package/dist/ts/worker.d.ts.map +1 -1
  34. package/dist/ts/worker.js +394 -0
  35. package/dist/ts/worker.js.map +1 -1
  36. package/dist/wrapper.d.ts +4 -3
  37. package/dist/wrapper.d.ts.map +1 -1
  38. package/dist/wrapper.js +3 -2
  39. package/dist/wrapper.js.map +1 -1
  40. package/package.json +3 -2
  41. package/pkg/README.md +113 -16
  42. package/pkg/libbitsub.d.ts +51 -1
  43. package/pkg/libbitsub.js +178 -3
  44. package/pkg/libbitsub_bg.wasm +0 -0
  45. package/pkg/libbitsub_bg.wasm.d.ts +21 -0
  46. package/pkg/package.json +4 -4
  47. package/src/integrations/react.tsx +7 -1
  48. package/src/integrations/shared.ts +2 -1
  49. package/src/wrapper.ts +22 -2
@@ -1,9 +1,9 @@
1
1
  /**
2
2
  * Type definitions for libbitsub TypeScript wrapper.
3
3
  */
4
- import type { SubtitleRenderer as WasmSubtitleRenderer, PgsParser as WasmPgsParser, VobSubParser as WasmVobSubParser, RenderResult, SubtitleFrame, VobSubFrame } from '../../pkg/libbitsub';
5
- export type { WasmSubtitleRenderer, WasmPgsParser, WasmVobSubParser, RenderResult, SubtitleFrame, VobSubFrame };
6
- export type SubtitleFormatName = 'pgs' | 'vobsub';
4
+ import type { SubtitleRenderer as WasmSubtitleRenderer, PgsParser as WasmPgsParser, VobSubParser as WasmVobSubParser, DvbParser as WasmDvbParser, RenderResult, SubtitleFrame, VobSubFrame } from '../../pkg/libbitsub';
5
+ export type { WasmSubtitleRenderer, WasmPgsParser, WasmVobSubParser, WasmDvbParser, RenderResult, SubtitleFrame, VobSubFrame };
6
+ export type SubtitleFormatName = 'pgs' | 'vobsub' | 'dvb';
7
7
  export type SubtitleHorizontalAlign = 'left' | 'center' | 'right';
8
8
  export type SubtitleAspectMode = 'stretch' | 'contain' | 'cover';
9
9
  export type SubtitleDiagnosticDetailValue = string | number | boolean | null | undefined;
@@ -27,6 +27,17 @@ export interface SubtitleDiagnosticsOptions {
27
27
  debug?: boolean;
28
28
  onWarning?: (warning: SubtitleDiagnosticWarning) => void;
29
29
  }
30
+ /** Binary chunk accepted by the live PGS/DVB renderer push API. */
31
+ export type SubtitleStreamChunk = ArrayBuffer | Uint8Array;
32
+ /** Incremental input surface implemented by the live PGS and DVB video renderers. */
33
+ export interface LiveSubtitleRenderer {
34
+ /** Append bytes and resolve with the number of newly indexed cues. */
35
+ append(data: SubtitleStreamChunk): Promise<number>;
36
+ /** Discard any incomplete trailing input and resolve with the total cue count. */
37
+ flush(): Promise<number>;
38
+ /** Clear all stream/parser state while keeping the renderer ready for new input. */
39
+ reset(): Promise<void>;
40
+ }
30
41
  /** Subtitle data output format compatible with the original JS implementation. */
31
42
  export interface SubtitleData {
32
43
  /** Total width of the presentation (screen). */
@@ -134,9 +145,17 @@ export interface OpenedSubtitles {
134
145
  export interface VideoSubtitleOptions {
135
146
  /** The video element to sync with */
136
147
  video: HTMLVideoElement;
137
- /** URL to the subtitle file */
148
+ /** Element or shadow root that should host the overlay canvas (defaults to the video's parent). */
149
+ container?: HTMLElement | ShadowRoot;
150
+ /** Existing canvas to render into. Never removed on dispose; Worker OffscreenCanvas requires an explicit backend. */
151
+ canvas?: HTMLCanvasElement;
152
+ /** Cap the canvas backing-store pixel ratio while preserving its CSS size. */
153
+ devicePixelRatioCap?: number;
154
+ /** Force a present backend instead of using the automatic backend ladder. */
155
+ backend?: SubtitleRendererBackend | 'auto';
156
+ /** URL to the subtitle file. Omit both sources to create a live PGS/DVB push renderer. */
138
157
  subUrl?: string;
139
- /** Direct subtitle content (ArrayBuffer) */
158
+ /** Direct subtitle content (ArrayBuffer). Omit both sources to create a live PGS/DVB push renderer. */
140
159
  subContent?: ArrayBuffer;
141
160
  /** Worker URL (kept for API compatibility, not used in WASM version) */
142
161
  workerUrl?: string;
@@ -150,6 +169,10 @@ export interface VideoSubtitleOptions {
150
169
  onWebGPUFallback?: () => void;
151
170
  /** Callback when WebGL2 is unavailable and falling back to Canvas2D */
152
171
  onWebGL2Fallback?: () => void;
172
+ /** Prefer Worker OffscreenCanvas present on the Canvas2D tier (default true) */
173
+ offscreenRender?: boolean;
174
+ /** Sync cue selection to presented video-frame mediaTime when supported (default true) */
175
+ frameAwareSync?: boolean;
153
176
  /** Initial display settings for subtitle layout */
154
177
  displaySettings?: Partial<SubtitleDisplaySettings>;
155
178
  /** Maximum number of rendered frames kept in cache */
@@ -198,7 +221,22 @@ export interface SubtitleDisplaySettings {
198
221
  /** Global subtitle opacity (0.0 - 1.0) */
199
222
  opacity: number;
200
223
  }
201
- export type SubtitleRendererBackend = 'webgpu' | 'webgl2' | 'canvas2d';
224
+ export type SubtitleRendererBackend = 'webgpu' | 'webgl2' | 'worker-offscreen' | 'canvas2d';
225
+ export type SubtitleSynchronizationMode = 'video-frame' | 'animation-frame';
226
+ export type SubtitlePresentPath = 'main-webgpu' | 'main-webgl2' | 'worker-offscreen' | 'main-canvas2d' | 'main-thread';
227
+ export interface RuntimeCapabilities {
228
+ worker: boolean;
229
+ offscreenCanvas: boolean;
230
+ transferControlToOffscreen: boolean;
231
+ offscreenCanvas2d: boolean;
232
+ workerOffscreenRender: boolean;
233
+ webgpu: boolean;
234
+ webgl2: boolean;
235
+ canvas2d: boolean;
236
+ createImageBitmap: boolean;
237
+ preferredPresentPath: SubtitlePresentPath;
238
+ reasons: string[];
239
+ }
202
240
  export type SubtitleRendererEvent = {
203
241
  type: 'loading';
204
242
  format: SubtitleFormatName;
@@ -286,6 +324,7 @@ export interface SubtitleRendererStatsSnapshot {
286
324
  pendingRenders: number;
287
325
  totalEntries: number;
288
326
  currentIndex: number;
327
+ syncMode: SubtitleSynchronizationMode;
289
328
  }
290
329
  export interface CompositionData {
291
330
  rgba: Uint8Array;
@@ -308,6 +347,16 @@ export interface WorkerSessionMetadata {
308
347
  trackId?: string;
309
348
  hasIdxMetadata?: boolean;
310
349
  }
350
+ export interface WorkerOffscreenDisplaySettings {
351
+ scale: number;
352
+ aspectMode: SubtitleAspectMode;
353
+ verticalOffset: number;
354
+ horizontalOffset: number;
355
+ horizontalAlign: SubtitleHorizontalAlign;
356
+ bottomPadding: number;
357
+ safeArea: number;
358
+ opacity: number;
359
+ }
311
360
  export type WorkerRequest = {
312
361
  type: 'init';
313
362
  wasmUrl: string;
@@ -326,6 +375,26 @@ export type WorkerRequest = {
326
375
  } | {
327
376
  type: 'finishPgs';
328
377
  sessionId: string;
378
+ } | {
379
+ type: 'resetPgs';
380
+ sessionId: string;
381
+ } | {
382
+ type: 'loadDvb';
383
+ sessionId: string;
384
+ data: ArrayBuffer;
385
+ } | {
386
+ type: 'beginDvb';
387
+ sessionId: string;
388
+ } | {
389
+ type: 'appendDvb';
390
+ sessionId: string;
391
+ data: ArrayBuffer;
392
+ } | {
393
+ type: 'finishDvb';
394
+ sessionId: string;
395
+ } | {
396
+ type: 'resetDvb';
397
+ sessionId: string;
329
398
  } | {
330
399
  type: 'loadVobSub';
331
400
  sessionId: string;
@@ -351,6 +420,10 @@ export type WorkerRequest = {
351
420
  type: 'renderPgsAtIndex';
352
421
  sessionId: string;
353
422
  index: number;
423
+ } | {
424
+ type: 'renderDvbAtIndex';
425
+ sessionId: string;
426
+ index: number;
354
427
  } | {
355
428
  type: 'renderVobSubAtIndex';
356
429
  sessionId: string;
@@ -359,6 +432,10 @@ export type WorkerRequest = {
359
432
  type: 'findPgsIndex';
360
433
  sessionId: string;
361
434
  timeMs: number;
435
+ } | {
436
+ type: 'findDvbIndex';
437
+ sessionId: string;
438
+ timeMs: number;
362
439
  } | {
363
440
  type: 'findVobSubIndex';
364
441
  sessionId: string;
@@ -366,18 +443,27 @@ export type WorkerRequest = {
366
443
  } | {
367
444
  type: 'getPgsTimestamps';
368
445
  sessionId: string;
446
+ } | {
447
+ type: 'getDvbTimestamps';
448
+ sessionId: string;
369
449
  } | {
370
450
  type: 'getVobSubTimestamps';
371
451
  sessionId: string;
372
452
  } | {
373
453
  type: 'clearPgsCache';
374
454
  sessionId: string;
455
+ } | {
456
+ type: 'clearDvbCache';
457
+ sessionId: string;
375
458
  } | {
376
459
  type: 'clearVobSubCache';
377
460
  sessionId: string;
378
461
  } | {
379
462
  type: 'disposePgs';
380
463
  sessionId: string;
464
+ } | {
465
+ type: 'disposeDvb';
466
+ sessionId: string;
381
467
  } | {
382
468
  type: 'disposeVobSub';
383
469
  sessionId: string;
@@ -393,7 +479,31 @@ export type WorkerRequest = {
393
479
  type: 'setVobSubDebandRange';
394
480
  sessionId: string;
395
481
  range: number;
482
+ } | {
483
+ type: 'attachOffscreenCanvas';
484
+ sessionId: string;
485
+ canvas: OffscreenCanvas;
486
+ } | {
487
+ type: 'resizeOffscreenCanvas';
488
+ sessionId: string;
489
+ width: number;
490
+ height: number;
491
+ } | {
492
+ type: 'detachOffscreenCanvas';
493
+ sessionId: string;
494
+ } | {
495
+ type: 'clearOffscreenCanvas';
496
+ sessionId: string;
497
+ } | {
498
+ type: 'presentOffscreen';
499
+ sessionId: string;
500
+ format: SubtitleFormatName;
501
+ index: number;
502
+ canvasWidth: number;
503
+ canvasHeight: number;
504
+ displaySettings: WorkerOffscreenDisplaySettings;
396
505
  };
506
+ export type WorkerOffscreenPresentStatus = 'rendered' | 'cleared' | 'empty' | 'failed';
397
507
  export type WorkerResponse = {
398
508
  type: 'initComplete';
399
509
  success: boolean;
@@ -411,6 +521,21 @@ export type WorkerResponse = {
411
521
  partial: boolean;
412
522
  metadata: WorkerSessionMetadata;
413
523
  timestamps: Float64Array;
524
+ } | {
525
+ type: 'dvbLoaded';
526
+ count: number;
527
+ byteLength: number;
528
+ metadata: WorkerSessionMetadata;
529
+ timestamps: Float64Array;
530
+ endTimestamps: Float64Array;
531
+ } | {
532
+ type: 'dvbProgress';
533
+ count: number;
534
+ added: number;
535
+ partial: boolean;
536
+ metadata: WorkerSessionMetadata;
537
+ timestamps: Float64Array;
538
+ endTimestamps: Float64Array;
414
539
  } | {
415
540
  type: 'vobSubLoaded';
416
541
  count: number;
@@ -427,6 +552,10 @@ export type WorkerResponse = {
427
552
  type: 'pgsFrame';
428
553
  frame: FrameData | null;
429
554
  renderIssue?: string;
555
+ } | {
556
+ type: 'dvbFrame';
557
+ frame: FrameData | null;
558
+ renderIssue?: string;
430
559
  } | {
431
560
  type: 'vobSubFrame';
432
561
  frame: FrameData | null;
@@ -434,12 +563,18 @@ export type WorkerResponse = {
434
563
  } | {
435
564
  type: 'pgsIndex';
436
565
  index: number;
566
+ } | {
567
+ type: 'dvbIndex';
568
+ index: number;
437
569
  } | {
438
570
  type: 'vobSubIndex';
439
571
  index: number;
440
572
  } | {
441
573
  type: 'pgsTimestamps';
442
574
  timestamps: Float64Array;
575
+ } | {
576
+ type: 'dvbTimestamps';
577
+ timestamps: Float64Array;
443
578
  } | {
444
579
  type: 'vobSubTimestamps';
445
580
  timestamps: Float64Array;
@@ -449,6 +584,24 @@ export type WorkerResponse = {
449
584
  type: 'disposed';
450
585
  } | {
451
586
  type: 'debandSet';
587
+ } | {
588
+ type: 'offscreenAttached';
589
+ } | {
590
+ type: 'offscreenResized';
591
+ } | {
592
+ type: 'offscreenDetached';
593
+ } | {
594
+ type: 'offscreenCleared';
595
+ } | {
596
+ type: 'offscreenPresented';
597
+ status: WorkerOffscreenPresentStatus;
598
+ /** True only when the worker presentation infrastructure is unusable. */
599
+ fatal?: boolean;
600
+ renderIssue?: string;
601
+ width?: number;
602
+ height?: number;
603
+ compositionCount?: number;
604
+ bounds?: SubtitleCueBounds | null;
452
605
  } | {
453
606
  type: 'error';
454
607
  message: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/ts/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/ts/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/ts/utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,kBAAkB,EAClB,SAAS,EAET,iBAAiB,EACjB,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,SAAS,CAAA;AA6NhB,wBAAgB,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,kBAAkB,EAAE,MAAM,GAAG,SAAS,GAAG,UAAU,GAAG,QAAQ,CAAC,GAAG,OAAO,CAMjH;AAED,yCAAyC;AACzC,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAmBtF;AAED,iDAAiD;AACjD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,SAAS,GAAG,YAAY,CAc/D;AAED,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,UAAU,GAAG,iBAAiB,EACtC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb;IAAE,SAAS,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAsDnE;AAED,uDAAuD;AACvD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,YAAY,GAAG,iBAAiB,GAAG,IAAI,CAyB9E;AAED,qFAAqF;AACrF,wBAAgB,cAAc,CAC5B,KAAK,EAAE,mBAAmB,EAC1B,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,YAAY,GAAG,IAAI,EAC1B,WAAW,GAAE,MAAM,GAAG,IAAW,GAChC,IAAI,CAkBN;AAED,wEAAwE;AACxE,wBAAgB,aAAa,CAAC,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAWpF;AAED,2CAA2C;AAC3C,wBAAgB,qBAAqB,IAAI,MAAM,CAM9C;AAED,yEAAyE;AACzE,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,kBAAkB,GAAG,kBAAkB,GAAG,IAAI,CAgB1F;AAED,mCAAmC;AACnC,wBAAgB,iBAAiB,IAAI,mBAAmB,CAYvD"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/ts/utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,kBAAkB,EAClB,SAAS,EAET,iBAAiB,EACjB,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,SAAS,CAAA;AAmUhB,wBAAgB,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,kBAAkB,EAAE,MAAM,GAAG,SAAS,GAAG,UAAU,GAAG,QAAQ,CAAC,GAAG,OAAO,CAMjH;AAED,yCAAyC;AACzC,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAmBtF;AAED,iDAAiD;AACjD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,SAAS,GAAG,YAAY,CAc/D;AAED,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,UAAU,GAAG,iBAAiB,EACtC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb;IAAE,SAAS,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAsDnE;AAED,uDAAuD;AACvD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,YAAY,GAAG,iBAAiB,GAAG,IAAI,CAyB9E;AAED,qFAAqF;AACrF,wBAAgB,cAAc,CAC5B,KAAK,EAAE,mBAAmB,EAC1B,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,YAAY,GAAG,IAAI,EAC1B,WAAW,GAAE,MAAM,GAAG,IAAW,GAChC,IAAI,CAkBN;AAED,wEAAwE;AACxE,wBAAgB,aAAa,CAAC,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAWpF;AAED,2CAA2C;AAC3C,wBAAgB,qBAAqB,IAAI,MAAM,CAM9C;AAED,yEAAyE;AACzE,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,kBAAkB,GAAG,kBAAkB,GAAG,IAAI,CAwB1F;AAED,mCAAmC;AACnC,wBAAgB,iBAAiB,IAAI,mBAAmB,CAYvD"}
package/dist/ts/utils.js CHANGED
@@ -22,6 +22,91 @@ function toClampedView(pixels) {
22
22
  function looksLikePgsBinary(binary) {
23
23
  return binary.length >= 2 && binary[0] === 0x50 && binary[1] === 0x47;
24
24
  }
25
+ const DVB_SYNC_BYTE = 0x0f;
26
+ const DVB_PAGE_COMPOSITION = 0x10;
27
+ const DVB_REGION_COMPOSITION = 0x11;
28
+ const DVB_CLUT_DEFINITION = 0x12;
29
+ const DVB_OBJECT_DATA = 0x13;
30
+ const DVB_DISPLAY_DEFINITION = 0x14;
31
+ const DVB_END_OF_DISPLAY_SET = 0x80;
32
+ const DVB_STUFFING = 0xff;
33
+ function isKnownDvbSegmentType(segmentType) {
34
+ return (segmentType === DVB_PAGE_COMPOSITION ||
35
+ segmentType === DVB_REGION_COMPOSITION ||
36
+ segmentType === DVB_CLUT_DEFINITION ||
37
+ segmentType === DVB_OBJECT_DATA ||
38
+ segmentType === DVB_DISPLAY_DEFINITION ||
39
+ segmentType === DVB_END_OF_DISPLAY_SET ||
40
+ segmentType === DVB_STUFFING);
41
+ }
42
+ function looksLikeDvbPayload(binary, start = 0) {
43
+ let offset = start;
44
+ if (binary.length - offset >= 3 &&
45
+ binary[offset] === 0x20 &&
46
+ binary[offset + 1] === 0x00 &&
47
+ binary[offset + 2] === DVB_SYNC_BYTE) {
48
+ offset += 2;
49
+ }
50
+ if (offset >= binary.length || binary[offset] !== DVB_SYNC_BYTE) {
51
+ return false;
52
+ }
53
+ let known = 0;
54
+ while (offset + 6 <= binary.length) {
55
+ if (binary[offset] === DVB_STUFFING)
56
+ break;
57
+ if (binary[offset] !== DVB_SYNC_BYTE)
58
+ break;
59
+ const segmentType = binary[offset + 1];
60
+ const length = (binary[offset + 4] << 8) | binary[offset + 5];
61
+ const total = 6 + length;
62
+ if (offset + total > binary.length)
63
+ break;
64
+ if (isKnownDvbSegmentType(segmentType)) {
65
+ known += 1;
66
+ if (known >= 2 || segmentType === DVB_PAGE_COMPOSITION) {
67
+ return true;
68
+ }
69
+ }
70
+ offset += total;
71
+ }
72
+ return known > 0;
73
+ }
74
+ function looksLikeMpegPesDvb(binary) {
75
+ const limit = Math.min(binary.length - 9, 65_536);
76
+ for (let index = 0; index <= limit; index += 1) {
77
+ if (binary[index] !== 0x00 ||
78
+ binary[index + 1] !== 0x00 ||
79
+ binary[index + 2] !== 0x01 ||
80
+ binary[index + 3] !== 0xbd) {
81
+ continue;
82
+ }
83
+ const packetLength = (binary[index + 4] << 8) | binary[index + 5];
84
+ const total = 6 + packetLength;
85
+ if (index + total > binary.length || total < 9)
86
+ continue;
87
+ const headerDataLength = binary[index + 8];
88
+ const payloadStart = index + 9 + headerDataLength;
89
+ if (payloadStart >= index + total)
90
+ continue;
91
+ if (looksLikeDvbPayload(binary.subarray(payloadStart, index + total))) {
92
+ return true;
93
+ }
94
+ }
95
+ return false;
96
+ }
97
+ function looksLikeDvbBinary(binary) {
98
+ if (binary.length >= 10 && binary[0] === 0x44 && binary[1] === 0x56) {
99
+ // "DV" framed dump
100
+ const payloadLen = ((binary[6] << 24) | (binary[7] << 16) | (binary[8] << 8) | binary[9]) >>> 0;
101
+ if (payloadLen > 0 && binary.length >= 10 + Math.min(payloadLen, 64)) {
102
+ if (looksLikeDvbPayload(binary.subarray(10)))
103
+ return true;
104
+ }
105
+ }
106
+ if (looksLikeMpegPesDvb(binary))
107
+ return true;
108
+ return looksLikeDvbPayload(binary);
109
+ }
25
110
  const EBML_HEADER_ID = 0x1a45dfa3;
26
111
  const EBML_DOC_TYPE_ID = 0x4282;
27
112
  const EBML_SEGMENT_ID = 0x18538067;
@@ -331,24 +416,35 @@ export function createWorkerSessionId() {
331
416
  }
332
417
  /** Detect the subtitle format from binary content, filenames or URLs. */
333
418
  export function detectSubtitleFormat(source) {
419
+ // VobSub almost always ships with an .idx companion.
334
420
  if (source.idxContent || source.idxUrl)
335
421
  return 'vobsub';
336
422
  const fileHint = [source.fileName, source.subUrl].find(Boolean)?.toLowerCase();
337
- if (fileHint?.endsWith('.sub') || fileHint?.endsWith('.idx'))
423
+ if (fileHint?.endsWith('.idx'))
338
424
  return 'vobsub';
339
425
  if (fileHint?.endsWith('.mks'))
340
426
  return 'vobsub';
341
427
  if (fileHint?.endsWith('.sup') || fileHint?.endsWith('.pgs'))
342
428
  return 'pgs';
429
+ if (fileHint?.endsWith('.dvb'))
430
+ return 'dvb';
343
431
  const binary = toBinaryView(source.data ?? source.subData);
344
- if (!binary)
432
+ if (!binary) {
433
+ // Bare .sub without bytes cannot be distinguished; prefer VobSub historically.
434
+ if (fileHint?.endsWith('.sub'))
435
+ return 'vobsub';
345
436
  return null;
437
+ }
346
438
  if (looksLikePgsBinary(binary))
347
439
  return 'pgs';
440
+ if (looksLikeDvbBinary(binary))
441
+ return 'dvb';
348
442
  if (looksLikeMksBinary(binary))
349
443
  return 'vobsub';
350
444
  if (looksLikeVobSubBinary(binary))
351
445
  return 'vobsub';
446
+ if (fileHint?.endsWith('.sub'))
447
+ return 'vobsub';
352
448
  return null;
353
449
  }
354
450
  /** Create initial worker state. */
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/ts/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/ts/utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ import type { SubtitleSynchronizationMode } from './types';
2
+ export interface VideoFrameTick {
3
+ mediaTime: number;
4
+ presentedFrames: number | null;
5
+ }
6
+ interface VideoFrameSource {
7
+ currentTime: number;
8
+ requestVideoFrameCallback?: (callback: VideoFrameRequestCallback) => number;
9
+ cancelVideoFrameCallback?: (handle: number) => void;
10
+ }
11
+ interface AnimationFrameScheduler {
12
+ request(callback: FrameRequestCallback): number;
13
+ cancel(handle: number): void;
14
+ }
15
+ export declare function supportsFrameAwareSync(video: VideoFrameSource, enabled?: boolean): boolean;
16
+ /**
17
+ * Schedule one callback per presented video frame when possible, with an
18
+ * animation-frame/currentTime compatibility fallback.
19
+ */
20
+ export declare class VideoFrameScheduler {
21
+ private readonly video;
22
+ private readonly onFrame;
23
+ private readonly animationFrames;
24
+ private animationFrameHandle;
25
+ private videoFrameHandle;
26
+ private generation;
27
+ private useVideoFrames;
28
+ constructor(video: VideoFrameSource, frameAware: boolean, onFrame: (tick: VideoFrameTick) => void, animationFrames?: AnimationFrameScheduler);
29
+ get mode(): SubtitleSynchronizationMode;
30
+ start(): void;
31
+ stop(): void;
32
+ private schedule;
33
+ }
34
+ export {};
35
+ //# sourceMappingURL=video-frame-scheduler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"video-frame-scheduler.d.ts","sourceRoot":"","sources":["../../src/ts/video-frame-scheduler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,SAAS,CAAA;AAE1D,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAA;IACjB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;CAC/B;AAED,UAAU,gBAAgB;IACxB,WAAW,EAAE,MAAM,CAAA;IACnB,yBAAyB,CAAC,EAAE,CAAC,QAAQ,EAAE,yBAAyB,KAAK,MAAM,CAAA;IAC3E,wBAAwB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;CACpD;AAED,UAAU,uBAAuB;IAC/B,OAAO,CAAC,QAAQ,EAAE,oBAAoB,GAAG,MAAM,CAAA;IAC/C,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;CAC7B;AAOD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,gBAAgB,EAAE,OAAO,UAAO,GAAG,OAAO,CAEvF;AAED;;;GAGG;AACH,qBAAa,mBAAmB;IAO5B,OAAO,CAAC,QAAQ,CAAC,KAAK;IAEtB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,eAAe;IATlC,OAAO,CAAC,oBAAoB,CAAsB;IAClD,OAAO,CAAC,gBAAgB,CAAsB;IAC9C,OAAO,CAAC,UAAU,CAAI;IACtB,OAAO,CAAC,cAAc,CAAS;IAE/B,YACmB,KAAK,EAAE,gBAAgB,EACxC,UAAU,EAAE,OAAO,EACF,OAAO,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,IAAI,EACvC,eAAe,GAAE,uBAAwD,EAG3F;IAED,IAAI,IAAI,IAAI,2BAA2B,CAEtC;IAED,KAAK,IAAI,IAAI,CAIZ;IAED,IAAI,IAAI,IAAI,CAmBX;IAED,OAAO,CAAC,QAAQ;CAwCjB"}