Commit Graph
100 Commits
Author SHA1 Message Date
Vanilagy eed49ee1d0 Remove media sinks, adapt conversion code and computePacketStats to use cursors, remove setTimestamp, setDuration and setDuration on samples, add sample clone override options, optimize async mutex 2025-12-28 17:50:01 +01:00
Vanilagy e56e754f9e Formatting 2025-12-22 23:23:23 +01:00
Vanilagy 58d73b7de3 Make more use of sequenceNumber in getNextPacket 2025-12-22 23:20:51 +01:00
Vanilagy 4f8c8836ec Migrate FLAC demuxer to new packet system, move computeDuration impl to Input 2025-12-22 23:16:05 +01:00
Vanilagy bc1511a201 Migrate Ogg demuxer to new packet system, improve Ogg demuxer performance 2025-12-22 22:52:26 +01:00
Vanilagy 0768f6137c Migrate ADTS demuxer to new packet system 2025-12-21 20:23:39 +01:00
Vanilagy b2c86ec4ba Migrate WAVE demuxer to new packet system 2025-12-21 19:59:42 +01:00
Vanilagy 3285d5ea7d Migrate Matroska demuxer to new packet system 2025-12-21 19:46:47 +01:00
Vanilagy 6722592e27 Migrate fragmented MP4 reading to new packet system, add tests for it, add packet internal data, and various other fixes prob 2025-12-21 19:11:46 +01:00
Vanilagy 00efb69a7d Fully update MP3 demuxer to use new packet reading system & mutex, add MP3 reading tests 2025-12-21 11:52:54 +01:00
Vanilagy ece27cca79 Update thumbnail generation example to use cursors 2025-12-21 10:50:32 +01:00
Vanilagy 3fa95cb449 Update media player example to use cursors, fix some cursor bugs, add more cursor tests 2025-12-20 21:46:24 +01:00
Vanilagy de82f6f3c9 SampleCursor code cleanup & couple of more fixes 2025-12-18 20:51:44 +01:00
Vanilagy 75af91f7b7 Validate nextKey behavior for audio tracks 2025-12-18 18:02:35 +01:00
Vanilagy 8815eab4a6 Add nextKey, better define waitUntilIdle, fix some bugs 2025-12-18 17:04:40 +01:00
Vanilagy 9dbab133db Add input type validation 2025-12-17 17:57:26 +01:00
Vanilagy 48c8b38ed5 Add InputDisposedError throwing to PacketReader 2025-12-17 17:51:33 +01:00
Vanilagy 8267d0191c Rename and extract function 2025-12-17 17:47:55 +01:00
Vanilagy 3bd227bd66 Change pump reuse rule: enforce queued commands are resolved in the order in which they are queued 2025-12-17 17:44:52 +01:00
Vanilagy d44b8bdbd3 Clone samples when reused with autoClose: false 2025-12-15 18:35:36 +01:00
Vanilagy f045e5988c Implement sample cursor reset() 2025-12-15 17:07:22 +01:00
Vanilagy 9222d943ad Make cursor initialization instant, fix some code 2025-12-15 01:31:35 +01:00
Vanilagy fbcb4dcb95 By the creators of AsyncMutex3 2025-12-14 23:32:55 +01:00
Vanilagy 0f015d8e98 Add AudioSampleCursor, make sample cursor error behavior more explicit, add sample mapping, and a bunch of extra shit I forgot 2025-12-14 23:24:50 +01:00
Vanilagy 48abcb240f Merge branch 'main' into cursors 2025-12-12 22:02:35 +01:00
Vanilagy f9207396d7 Bump minor 2025-12-11 20:42:31 +01:00
Vanilagy 84dec01dfd Add pause and resume methods to MediaStreamTrack sources (closes #241) 2025-12-11 15:51:18 +01:00
Vanilagy 1ff8abdaab "Extract function" ahh 2025-12-11 15:24:19 +01:00
Vanilagy cc649ba192 Add allowRotationMetadata video conversion option (see #247) 2025-12-11 14:41:00 +01:00
Vanilagy b73bf06ba7 Add sponsor 2025-12-11 14:05:01 +01:00
Vanilagy 49af8d5435 Bump patch 2025-12-09 14:25:01 +01:00
Vanilagy a09cb4aebf Add sponsor 2025-12-09 14:24:48 +01:00
Vanilagy 0500beaf34 Fix user agent detection in workers (fixes #223, #242) 2025-12-08 18:46:58 +01:00
Vanilagy f424f6e840 Count AVC SEI recovery points as keyframes (except on older Chromium versions) 2025-12-07 19:24:08 +01:00
Vanilagy d949d1eadb Bump patch 2025-12-05 23:01:23 +01:00
Vanilagy 11970675c6 Slightly adjust validated key packet retrieval logic 2025-12-05 23:00:40 +01:00
Vanilagy d6c223b0f6 Fix keyframe sample index lookup logic for ISOBMFF in rare B-frame scenarios 2025-12-05 22:14:23 +01:00
Vanilagy 5b703a1c78 Fix MP3 encoder emitting incorrect timestamps, fixed overaggressive audio sample gap filling (fixes #233) 2025-12-05 12:41:36 +01:00
Vanilagy 3dd7a9cb58 Fix unclosed samples in tests 2025-12-04 17:04:24 +01:00
Vanilagy 7b3f5dad2a Bump patch 2025-12-04 16:57:55 +01:00
Vanilagy dceb67a065 SURELY THIS TIME 2025-12-04 16:54:04 +01:00
Vanilagy dd39b8b2ca We try again again 2025-12-04 16:48:23 +01:00
Vanilagy 71963cbd92 Try again 2025-12-04 16:43:45 +01:00
Vanilagy 816bb020fb Fix incorrect conversion trim option typings, change release CI to "trusted publishing" 2025-12-04 16:40:41 +01:00
Vanilagy e5aeff89e3 Wtf 2025-12-04 10:03:09 +01:00
Vanilagy 3620b04caf Fix incomplete AV1 sequence header OBU parsing, fix missing saample close() calls in audio resampling path, add error logging when open samples are GC'd, bump patch 2025-12-04 09:58:12 +01:00
Vanilagy f86294b802 BIG cursor progress
- Add extensive tests for packet cursor, sample cursor, and call serialization
- Major PacketCursor refactor
- Add PacketReader
- Many SampleCursor fixes, harden the behavior
- Typo fixes and various other small things
2025-11-27 16:26:46 +01:00
Vanilagy c0c353dbe8 Bump patch 2025-11-26 23:31:29 +01:00
Vanilagy 52d7ba07b0 Merge branch 'main' into cursors 2025-11-26 12:06:05 +01:00
Vanilagy 75096edb23 Update TypeScript, fix generic ArrayBufferView type errors, allow SharedArrayBuffer as input for BufferSource 2025-11-26 12:04:23 +01:00
Vanilagy f33dd4f2cd UrlSource: Deal gracefully with servers that cap unbounded range requests (fixes #231) 2025-11-26 11:26:09 +01:00
Vanilagy cc3d48451e Bump patch 2025-11-25 17:26:12 +01:00
Vanilagy 34b3ef0d44 Fix URLs that get redirected 2025-11-24 17:41:41 +01:00
Vanilagy 896242a5a5 Enable sitemap generation for docs 2025-11-24 17:34:07 +01:00
Vanilagy ef7a40944e Stronger encodability checks for Firefox (fixes #222) 2025-11-24 17:18:46 +01:00
Vanilagy f62ecb0eb6 Fix wrong type being used 2025-11-24 16:53:53 +01:00
Vanilagy da159bb063 Stop retrying requests when the source is disposed, log warning in possible CORS detection case (see #158) 2025-11-24 16:28:10 +01:00
Vanilagy c5d1efc18d Bump patch 2025-11-20 09:22:26 +01:00
Vanilagy 408b4e4877 WIP 2025-11-19 11:29:23 +01:00
Vanilagy 9464adf22f Remove pure annotations for non-function call expressions (fixes #225) 2025-11-18 11:36:20 +01:00
Vanilagy bd9d35122f WIP 2 2025-11-14 21:00:29 +01:00
Vanilagy 7fd2ec6373 WIP 2025-11-14 14:07:31 +01:00
Vanilagy 17dfd2c68a Bump minor 2025-11-13 20:18:00 +01:00
Vanilagy abe6185ddd Fix test? 2025-11-13 11:02:36 +01:00
Vanilagy 217b383f12 Add read/write support for track disposition information 2025-11-13 11:00:42 +01:00
Vanilagy 89d48d1bf9 Bump patch 2025-11-13 08:52:48 +01:00
Vanilagy 6684984e7e Fix faulty timestamp rounding to nearest integer (fixes #207) 2025-11-12 21:35:18 +01:00
Vanilagy 0f030dc2a6 Add Ponder 2025-11-12 19:28:43 +01:00
Vanilagy 02b08e036b Fix Matroska files where no audio packets are key packets (fixes #192) 2025-11-12 16:07:17 +01:00
Vanilagy 327696666b Expand doc blocks 2025-11-12 14:40:47 +01:00
Vanilagy 07b2e70863 Force software decoding in Chromium for interlaced AVC 2025-11-12 14:29:56 +01:00
Vanilagy 3cb6ed82ce Fix globals not being treeshakable by some bundlers (fixes #172) 2025-11-12 13:11:18 +01:00
Vanilagy 12216ae29e Remove reordering Matroska blocks by references (fixes #178) 2025-11-12 10:49:47 +01:00
Vanilagy 198b3d2eae Merge branch 'main' of https://github.com/Vanilagy/mediabunny 2025-11-12 10:05:41 +01:00
Vanilagy e33e9f13fe Fix missing VideoSample.close() calls in CanvasSink conversion path 2025-11-12 10:05:41 +01:00
Vanilagy fa1f44cf92 Bump patch 2025-11-11 22:26:46 +01:00
Vanilagy 966ac133e9 Merge branch 'main' of https://github.com/Vanilagy/mediabunny 2025-11-11 18:03:28 +01:00
Vanilagy 23f814679e Modify audio encoder to fill gaps between timestamps with silence to ensure AV sync (fixes #176) 2025-11-11 18:03:28 +01:00
Vanilagy 9d477dfb14 Allow muxing of avc3 into ISOBMFF (see #216) 2025-11-11 17:06:10 +01:00
Vanilagy 5b45c51d40 Support AVC3 in ISOBMFF (fixes #216) 2025-11-11 16:55:54 +01:00
Vanilagy 71dd2c565b Merge branch 'main' of https://github.com/Vanilagy/metamuxer 2025-11-11 11:05:17 +01:00
Vanilagy 3db4aa8b91 Fixed doubly stacked rotation correction when converting rotated video with a custom process function (fixes #218) 2025-11-11 11:05:15 +01:00
Vanilagy 8b39eb0d43 Revert Matroska default duration flooring 2025-11-10 21:14:43 +01:00
Vanilagy 6022781e8c Bump patch 2025-11-10 20:53:28 +01:00
Vanilagy c0da28fb6c Floor Matroska default packet duration (fixes #170) 2025-11-10 16:14:25 +01:00
Vanilagy fd8c74d4db Fix invalid encoder AAC description on WebKit (fixes #206) 2025-11-10 14:44:35 +01:00
David P.andGitHub 6fb3103c01 Merge pull request #215 from hexcowboy/issue-#184
Use `ArrayBuffer` instead of `ReadableStreamReader`on WebKit browsers
2025-11-10 11:36:13 +01:00
Vanilagy d969266662 Simplify isWebKit, get rid of isSafari 2025-11-10 11:30:26 +01:00
Vanilagy 5aabf6350a Clarify docs 2025-11-06 16:31:02 +01:00
Vanilagy 21cff32831 Bump patch 2025-11-06 10:02:23 +01:00
David P.andGitHub 73e936f325 Merge pull request #210 from JonnyBurger/increase-tolerance-by-one
Increase tolerance of pixels by 1 in tests
2025-11-06 09:01:40 +00:00
Vanilagy b5f5b5588c Update RVE logo 2025-11-03 15:24:17 +01:00
Vanilagy b1f17b25e3 Add Jellypod & fix RVE logo 2025-11-03 12:12:12 +01:00
Vanilagy efcf5d0069 Add vjeux 2025-11-02 22:03:35 +01:00
Vanilagy aad31009fe Make test more strict 2025-11-02 21:56:16 +01:00
Vanilagy 68c37b49dc Another test test 2025-11-02 21:50:49 +01:00
Vanilagy b12fee70a3 Log test 2025-11-02 21:47:49 +01:00
Vanilagy 90d5aed051 Test test 2025-11-02 21:46:24 +01:00
Vanilagy d2d893ff30 Bump patch 2025-11-02 21:36:09 +01:00
Vanilagy 3217490d81 Fix read worker abort bugs (fixes #197) 2025-11-02 14:03:54 +01:00