avbridge 2.11.0 → 2.12.1
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 +111 -0
- package/dist/{avi-B5CQYB7L.cjs → avi-32UABODO.cjs} +14 -6
- package/dist/avi-32UABODO.cjs.map +1 -0
- package/dist/{avi-2ILLBNPQ.cjs → avi-5BPR6QUX.cjs} +14 -6
- package/dist/avi-5BPR6QUX.cjs.map +1 -0
- package/dist/{avi-RWWPN2PR.js → avi-BLIH7KKV.js} +13 -5
- package/dist/avi-BLIH7KKV.js.map +1 -0
- package/dist/{avi-JXU4GQL2.js → avi-GX2H34IQ.js} +13 -5
- package/dist/avi-GX2H34IQ.js.map +1 -0
- package/dist/{chunk-DCSOQH2N.js → chunk-3AI5WFFN.js} +40 -16
- package/dist/chunk-3AI5WFFN.js.map +1 -0
- package/dist/{chunk-2NSOOMXW.js → chunk-3YKWU4FM.js} +3 -3
- package/dist/{chunk-2NSOOMXW.js.map → chunk-3YKWU4FM.js.map} +1 -1
- package/dist/{chunk-GYIJU44C.js → chunk-5CX7BVVV.js} +5 -5
- package/dist/{chunk-GYIJU44C.js.map → chunk-5CX7BVVV.js.map} +1 -1
- package/dist/{chunk-CL6UEUQF.js → chunk-B76QWPFM.js} +5 -5
- package/dist/{chunk-CL6UEUQF.js.map → chunk-B76QWPFM.js.map} +1 -1
- package/dist/{chunk-IHNHHEA2.js → chunk-BN7BRTLY.js} +143 -32
- package/dist/chunk-BN7BRTLY.js.map +1 -0
- package/dist/{chunk-OTFS7DC4.cjs → chunk-E5MAM2P4.cjs} +14 -14
- package/dist/{chunk-OTFS7DC4.cjs.map → chunk-E5MAM2P4.cjs.map} +1 -1
- package/dist/{chunk-L7A3ECI2.cjs → chunk-HZUVMXBN.cjs} +4 -4
- package/dist/{chunk-L7A3ECI2.cjs.map → chunk-HZUVMXBN.cjs.map} +1 -1
- package/dist/{chunk-37UOSAVI.cjs → chunk-UM6WCSGL.cjs} +157 -46
- package/dist/chunk-UM6WCSGL.cjs.map +1 -0
- package/dist/{chunk-BYGZN4Z5.cjs → chunk-VLI3Y6IJ.cjs} +5 -5
- package/dist/{chunk-BYGZN4Z5.cjs.map → chunk-VLI3Y6IJ.cjs.map} +1 -1
- package/dist/{chunk-Z33SBWL5.cjs → chunk-YPZFGJV3.cjs} +40 -16
- package/dist/chunk-YPZFGJV3.cjs.map +1 -0
- package/dist/element-browser.js +186 -43
- package/dist/element-browser.js.map +1 -1
- package/dist/element.cjs +5 -5
- package/dist/element.d.cts +1 -1
- package/dist/element.d.ts +1 -1
- package/dist/element.js +4 -4
- package/dist/index.cjs +21 -21
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +9 -9
- package/dist/{libav-demux-3N5Y3VQA.cjs → libav-demux-575OYCT2.cjs} +9 -9
- package/dist/{libav-demux-3N5Y3VQA.cjs.map → libav-demux-575OYCT2.cjs.map} +1 -1
- package/dist/{libav-demux-JXD4OTLM.js → libav-demux-SXZDLC7W.js} +4 -4
- package/dist/{libav-demux-JXD4OTLM.js.map → libav-demux-SXZDLC7W.js.map} +1 -1
- package/dist/libav-http-reader-2S5HAHW4.js +3 -0
- package/dist/{libav-http-reader-WXG3Z7AI.js.map → libav-http-reader-2S5HAHW4.js.map} +1 -1
- package/dist/libav-http-reader-Q356EO2K.cjs +16 -0
- package/dist/{libav-http-reader-AZLE7YFS.cjs.map → libav-http-reader-Q356EO2K.cjs.map} +1 -1
- package/dist/{player-DDdNVFDv.d.cts → player-bQ6n4hVp.d.cts} +15 -0
- package/dist/{player-DDdNVFDv.d.ts → player-bQ6n4hVp.d.ts} +15 -0
- package/dist/player.cjs +264 -53
- package/dist/player.cjs.map +1 -1
- package/dist/player.d.cts +22 -0
- package/dist/player.d.ts +22 -0
- package/dist/player.js +264 -53
- package/dist/player.js.map +1 -1
- package/dist/remux-NSBJFMLG.cjs +35 -0
- package/dist/{remux-KUS5GIL6.cjs.map → remux-NSBJFMLG.cjs.map} +1 -1
- package/dist/remux-PHUHO3VV.js +10 -0
- package/dist/{remux-56V7LDAD.js.map → remux-PHUHO3VV.js.map} +1 -1
- package/package.json +1 -1
- package/src/element/avbridge-player.ts +123 -23
- package/src/element/player-styles.ts +13 -1
- package/src/player.ts +3 -3
- package/src/probe/avi.ts +34 -2
- package/src/strategies/fallback/decoder.ts +148 -19
- package/src/strategies/fallback/video-renderer.ts +41 -3
- package/src/strategies/hybrid/decoder.ts +34 -9
- package/src/types.ts +15 -0
- package/src/util/libav-http-reader.ts +58 -19
- package/vendor/libav/avbridge/libav-6.8.8.0-avbridge.wasm.mjs +1 -1
- package/vendor/libav/avbridge/libav-6.8.8.0-avbridge.wasm.wasm +0 -0
- package/vendor/libav/avbridge/libav-avbridge.mjs +1 -1
- package/dist/avi-2ILLBNPQ.cjs.map +0 -1
- package/dist/avi-B5CQYB7L.cjs.map +0 -1
- package/dist/avi-JXU4GQL2.js.map +0 -1
- package/dist/avi-RWWPN2PR.js.map +0 -1
- package/dist/chunk-37UOSAVI.cjs.map +0 -1
- package/dist/chunk-DCSOQH2N.js.map +0 -1
- package/dist/chunk-IHNHHEA2.js.map +0 -1
- package/dist/chunk-Z33SBWL5.cjs.map +0 -1
- package/dist/libav-http-reader-AZLE7YFS.cjs +0 -16
- package/dist/libav-http-reader-WXG3Z7AI.js +0 -3
- package/dist/remux-56V7LDAD.js +0 -10
- package/dist/remux-KUS5GIL6.cjs +0 -35
package/dist/player.d.cts
CHANGED
|
@@ -209,6 +209,14 @@ interface CreatePlayerOptions {
|
|
|
209
209
|
* for interceptors, logging, or environments without a global fetch.
|
|
210
210
|
*/
|
|
211
211
|
fetchFn?: FetchFn;
|
|
212
|
+
/**
|
|
213
|
+
* Byte budget for the libav HTTP reader's LRU cache of fetched ranges.
|
|
214
|
+
* Defaults to 8 MB. Set to `0` to disable caching. Raise this when the
|
|
215
|
+
* app plays seek-heavy legacy-container media from URLs — hot regions
|
|
216
|
+
* (header/moov, tail index, current window) stay resident instead of
|
|
217
|
+
* being re-fetched on every bounce.
|
|
218
|
+
*/
|
|
219
|
+
cacheBytes?: number;
|
|
212
220
|
}
|
|
213
221
|
/** Signature-compatible with `globalThis.fetch`. */
|
|
214
222
|
type FetchFn = (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>;
|
|
@@ -216,6 +224,13 @@ type FetchFn = (input: RequestInfo | URL, init?: RequestInit) => Promise<Respons
|
|
|
216
224
|
interface TransportConfig {
|
|
217
225
|
requestInit?: RequestInit;
|
|
218
226
|
fetchFn?: FetchFn;
|
|
227
|
+
/**
|
|
228
|
+
* Byte budget for the libav HTTP reader's LRU cache of fetched ranges.
|
|
229
|
+
* Defaults to 8 MB. Set to `0` to disable caching entirely. Higher
|
|
230
|
+
* values help seek-heavy network playback keep hot regions
|
|
231
|
+
* (header/moov, tail index, current read) resident.
|
|
232
|
+
*/
|
|
233
|
+
cacheBytes?: number;
|
|
219
234
|
}
|
|
220
235
|
/** Events emitted by {@link UnifiedPlayer}. Strongly typed. */
|
|
221
236
|
interface PlayerEventMap {
|
|
@@ -380,12 +395,19 @@ declare class AvbridgePlayerElement extends HTMLElement {
|
|
|
380
395
|
private _updateSeekTooltip;
|
|
381
396
|
private _updateSeekVisuals;
|
|
382
397
|
private _updateTime;
|
|
398
|
+
/**
|
|
399
|
+
* Render every buffered range as its own segment so gaps (common on MSE
|
|
400
|
+
* after seeks) are visible. Not gated by `_userSeeking` — ranges should
|
|
401
|
+
* keep updating while the user scrubs, and runs cheaply on `progress`.
|
|
402
|
+
*/
|
|
403
|
+
private _updateBuffered;
|
|
383
404
|
private _toggleMute;
|
|
384
405
|
private _updateVolume;
|
|
385
406
|
private _toggleSettings;
|
|
386
407
|
private _fitSettingsToPlayer;
|
|
387
408
|
private _closeSettings;
|
|
388
409
|
private _buildSettingsMenu;
|
|
410
|
+
private _statsPrev;
|
|
389
411
|
private _toggleStats;
|
|
390
412
|
private _updateStats;
|
|
391
413
|
private _toggleFullscreen;
|
package/dist/player.d.ts
CHANGED
|
@@ -209,6 +209,14 @@ interface CreatePlayerOptions {
|
|
|
209
209
|
* for interceptors, logging, or environments without a global fetch.
|
|
210
210
|
*/
|
|
211
211
|
fetchFn?: FetchFn;
|
|
212
|
+
/**
|
|
213
|
+
* Byte budget for the libav HTTP reader's LRU cache of fetched ranges.
|
|
214
|
+
* Defaults to 8 MB. Set to `0` to disable caching. Raise this when the
|
|
215
|
+
* app plays seek-heavy legacy-container media from URLs — hot regions
|
|
216
|
+
* (header/moov, tail index, current window) stay resident instead of
|
|
217
|
+
* being re-fetched on every bounce.
|
|
218
|
+
*/
|
|
219
|
+
cacheBytes?: number;
|
|
212
220
|
}
|
|
213
221
|
/** Signature-compatible with `globalThis.fetch`. */
|
|
214
222
|
type FetchFn = (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>;
|
|
@@ -216,6 +224,13 @@ type FetchFn = (input: RequestInfo | URL, init?: RequestInit) => Promise<Respons
|
|
|
216
224
|
interface TransportConfig {
|
|
217
225
|
requestInit?: RequestInit;
|
|
218
226
|
fetchFn?: FetchFn;
|
|
227
|
+
/**
|
|
228
|
+
* Byte budget for the libav HTTP reader's LRU cache of fetched ranges.
|
|
229
|
+
* Defaults to 8 MB. Set to `0` to disable caching entirely. Higher
|
|
230
|
+
* values help seek-heavy network playback keep hot regions
|
|
231
|
+
* (header/moov, tail index, current read) resident.
|
|
232
|
+
*/
|
|
233
|
+
cacheBytes?: number;
|
|
219
234
|
}
|
|
220
235
|
/** Events emitted by {@link UnifiedPlayer}. Strongly typed. */
|
|
221
236
|
interface PlayerEventMap {
|
|
@@ -380,12 +395,19 @@ declare class AvbridgePlayerElement extends HTMLElement {
|
|
|
380
395
|
private _updateSeekTooltip;
|
|
381
396
|
private _updateSeekVisuals;
|
|
382
397
|
private _updateTime;
|
|
398
|
+
/**
|
|
399
|
+
* Render every buffered range as its own segment so gaps (common on MSE
|
|
400
|
+
* after seeks) are visible. Not gated by `_userSeeking` — ranges should
|
|
401
|
+
* keep updating while the user scrubs, and runs cheaply on `progress`.
|
|
402
|
+
*/
|
|
403
|
+
private _updateBuffered;
|
|
383
404
|
private _toggleMute;
|
|
384
405
|
private _updateVolume;
|
|
385
406
|
private _toggleSettings;
|
|
386
407
|
private _fitSettingsToPlayer;
|
|
387
408
|
private _closeSettings;
|
|
388
409
|
private _buildSettingsMenu;
|
|
410
|
+
private _statsPrev;
|
|
389
411
|
private _toggleStats;
|
|
390
412
|
private _updateStats;
|
|
391
413
|
private _toggleFullscreen;
|