08e3a85370
Fix orphaned queued reads when a freed worker slot is stolen concurrently ( #404 )
...
* Fix orphaned queued reads when a freed worker slot is stolen concurrently
ReadOrchestrator.runWorker's finally callback dequeues the oldest queued
read and asserts that createWorker succeeds ("we just freed up a worker").
That assumption races: the callback runs on a later microtask than the
worker's stop, and concurrent read() calls in that gap can LRU-evict the
freed worker and saturate every slot. The assert then throws as an
unhandled rejection after the read was removed from the queue but before
it was attached to any worker - its pending slices' promises never settle
and the awaiting reads hang forever.
Observed in production-like load (a 4-source composition player): 25
back-to-back occurrences saturating both workers, leaving clips
permanently undecodable.
Fix: create the worker first; only dequeue the read once a slot was
actually obtained. If every slot is busy, leave the read queued - each
running worker drains the queue from this same block when it stops, so
the read is picked up by whichever worker stops next.
Co-Authored-By: Claude Opus 4.8 <[email protected] >
* Update logic
---------
Co-authored-by: Claude Opus 4.8 <[email protected] >
Co-authored-by: Vanilagy <[email protected] >
2026-06-16 09:26:40 +00:00
github-actions[bot]
a5df6c7b89
Merge main into release for tag v1.47.0
2026-06-16 07:58:35 +00:00
Vanilagy
ad167c77e7
Bump minor
v1.47.0
2026-06-16 09:55:40 +02:00
Vanilagy
8b9a1acf16
Fix Conversion API process callbacks being called *before* other transformations ( fixes #403 ), restructure Conversion API to make full use of in-source transformations, add AudioSample.trim()
2026-06-15 18:30:16 +02:00
Jonny Burger and GitHub
0da1107858
[AI-generated] Fix unhandled rejection when disposing invalid input ( #413 )
...
* Fix input dispose rejection handling
* Move input disposal regression test
2026-06-15 16:25:02 +02:00
Vanilagy
00599e556e
Properly handle zero-sample track fragments again ( fixes #411 )
2026-06-15 16:23:53 +02:00
Vanilagy
1ddeae2e80
Merge branch 'main' into prores
2026-06-12 15:41:58 +02:00
Vanilagy
e1c6ab1866
Docs clarification
2026-06-12 15:36:50 +02:00
Vanilagy
bc533c71f7
Fix indentation
2026-06-11 21:50:27 +02:00
Vanilagy
879fd75547
Update to NodeAv v6 ( #392 )
2026-06-04 10:16:42 +02:00
github-actions[bot]
210d382113
Merge main into release for tag v1.46.0
2026-06-02 17:07:56 +00:00
Vanilagy
b4e51077aa
Bump minor
v1.46.0
2026-06-02 19:04:05 +02:00
Vanilagy
c423d62fd9
Change keyFrame parameter priority
2026-06-02 18:18:53 +02:00
Vanilagy
0cdf0063e2
Add VideoSample.encodeOptions, optimized ArrayBuffer-backed VideoSample cloning
2026-06-02 18:01:22 +02:00
Vanilagy
bb2f5d505d
Clarify and better error messages
2026-06-02 16:39:04 +02:00
Vanilagy
ebfb1e6d75
Add MediabunnyServerOptions and configurable hardware context ( closes #389 )
2026-06-02 16:28:47 +02:00
github-actions[bot]
a294d943e6
Merge main into release for tag v1.45.5
2026-06-02 11:36:44 +00:00
Vanilagy
8fbd31849b
Bump patch
v1.45.5
2026-06-02 13:31:16 +02:00
Vanilagy
d92df801bf
Change requestEntireFile() slice offset logic ( #390 )
2026-06-02 13:28:37 +02:00
Vanilagy
6832153fef
Merge branch 'main' of https://github.com/Vanilagy/metamuxer
2026-06-02 13:06:42 +02:00
Vanilagy
82690ef327
Clean up AVC packet NALUs with AUD in them for Chromium key frame detection ( fixes #396 )
2026-06-02 13:06:41 +02:00
c0d93f45a5
Support QuickTime nclc color information ( #397 )
...
* Support QuickTime nclc color information
* Tighten QuickTime nclc color test fixture
* Make QuickTime muxer write nclc color box
---------
Co-authored-by: Vanilagy <[email protected] >
2026-06-02 09:48:06 +00:00
Vanilagy
05f8ecd908
Respect Range header for UrlSource ( #387 )
2026-06-02 11:05:46 +02:00
Vanilagy
e0ced9901e
Remove NodeAv FinaliziationRegistry logic ( #392 )
2026-06-02 10:24:33 +02:00
96d0d9fb22
Fix tkhd issue for Apple ecosystem compatibility ( #391 )
...
* fix: ensure at least one track per type is enabled for Apple ecosystem compatibility
* Add ensureOneEnabledTrack() to ISOBMFF muxer
* Add test case
---------
Co-authored-by: Vanilagy <[email protected] >
2026-06-01 22:55:02 +02:00
Vanilagy
c6c768d93e
Omit 'signal', clarify docs for reading ranged resources ( #387 )
2026-06-01 22:00:39 +02:00
David P. and GitHub
5799cdf630
Merge pull request #387 from samohovets/docs/urlsource-requestinit-overrides
...
Document UrlSource RequestInit overrides
2026-06-01 21:55:47 +02:00
Vanilagy
831d395696
More stable test?
2026-06-01 21:52:34 +02:00
Vanilagy
288372ee71
Fix NodeAv memory leak ( fixes #392 )
2026-06-01 21:45:49 +02:00
Vanilagy
4825818f9b
Add sponsors
2026-06-01 18:42:33 +02:00
Igor Samokhovets
b82ccc2c6a
Document UrlSource RequestInit overrides
2026-05-25 11:12:41 +02:00
Vanilagy
eb8b5e2534
Add headerImage frontmatter
2026-05-24 17:59:49 +02:00
github-actions[bot]
9a8ccf6f6c
Merge main into release for tag v1.45.4
2026-05-24 14:53:43 +00:00
Vanilagy
1c12f2b66d
Bump patch
v1.45.4
2026-05-24 16:50:13 +02:00
Vanilagy
441eea38b9
CustomSource -> StreamSource
2026-05-24 15:48:01 +02:00
Vanilagy
ef27d73405
Fix FinalizationRegistry being able to prevent Inputs from being GCd in some cases ( fixes #367 )
2026-05-24 14:45:13 +02:00
Vanilagy
41a331b0dc
Cảm ơn
2026-05-22 11:46:33 +02:00
Vanilagy
85a80972a0
Make MP3 next frame location more strict for better recovery ( fixes #382 ), fix Date timezone for ID3 tags
2026-05-22 11:31:26 +02:00
github-actions[bot]
f34e4cd369
Merge main into release for tag v1.45.3
2026-05-19 20:36:20 +00:00
Vanilagy
149a2b4571
Bump patch
v1.45.3
2026-05-19 22:34:52 +02:00
Vanilagy
0c455236da
Add first encoded packet key frame check ( fixes #365 )
2026-05-19 16:15:17 +02:00
Vanilagy
41fb9657cb
Add sponsor
2026-05-19 15:20:03 +02:00
github-actions[bot]
93e6de980d
Merge main into release for tag v1.45.2
2026-05-14 12:40:17 +00:00
Vanilagy
d77ddf033b
Bump patch
v1.45.2
2026-05-14 14:39:16 +02:00
David P. and GitHub
b9f48ca9ef
Merge pull request #381 from Sturlen/fix/id3-metadata-parser-offset
...
Fix ID3v2 metadata parser
2026-05-14 14:03:44 +02:00
Sturlen
aa38385cae
fix(id3v2reader): use correct header size in readU24
2026-05-14 13:54:51 +02:00
github-actions[bot]
e6fe540cbc
Merge main into release for tag v1.45.1
2026-05-14 09:47:51 +00:00
Vanilagy
8bfedb0a88
Bump patch
v1.45.1
2026-05-14 11:46:07 +02:00
Vanilagy
d731037f6f
Simplify PCM regex ( closes #380 )
2026-05-14 11:44:13 +02:00
Vanilagy
f869358f93
Bump node-av to ^5.2.4
2026-05-14 11:39:55 +02:00