Commit Graph
845 Commits
Author SHA1 Message Date
Vanilagy e183e5022e Add new sponsors 2026-04-01 17:20:18 +02:00
Vanilagy d702409dd3 Bump-patch v1.40.1 2026-03-24 11:08:35 +01:00
Vanilagy cf45c10ff2 Add sponsors! 2026-03-23 11:44:25 +01:00
Vanilagy e03bb21c8a Fixed missing default values in Matroska demuxer (fixes #335) 2026-03-23 11:02:08 +01:00
Vanilagy 0b330cb513 Bump minor v1.40.0 2026-03-19 22:38:06 +01:00
Vanilagy 92c7831cf4 Fix incorrect reading of PAT 2026-03-19 16:06:55 +01:00
Vanilagy 9e9240dfc3 Merge branch 'main' of https://github.com/Vanilagy/mediabunny 2026-03-19 15:08:30 +01:00
Vanilagy fd39084e88 Simplify/fix 3d matrix rotation extraction (#330) 2026-03-19 15:08:29 +01:00
31d86331ec FLAC: Add appendOnly option for FlaxMuxer, fix FlacDemuxer reading it (#325)
* implement in FlacOutputFormatOptions

* implement in flac-muxer.ts

* Fix demuxer: Handle minimumFrameSize = 0, maxiumFrameSize = 0

* add a test

* Update flac-demuxer.ts

* Update flac.test.ts

* clean up comments for minima and maxima

* Add FlacOutputFormatOptions.appendOnly to docs

---------

Co-authored-by: Vanilagy <[email protected]>
2026-03-19 13:43:28 +00:00
Vanilagy 0d50526ff6 Fix incorrectly-written video rotation metadata even when rotation is baked into the video (fixes #329) 2026-03-19 14:25:40 +01:00
Vanilagy e693765d23 Fix failing test 2026-03-19 12:33:27 +01:00
Vanilagy 1da96f6d69 Add displayAspectWidth/displayAspectHeight only when they are necessary 2026-03-19 12:25:19 +01:00
Vanilagy 92ea645df4 Bump patch v1.39.2 2026-03-13 11:03:57 +01:00
Vanilagy 35e16ca23e Fix incorrect GOP timestamp verification logic for first GOP (fixes #321) 2026-03-13 10:45:34 +01:00
Vanilagy 87ed3a1934 Fix faulty MPEG-2 detection (fixes #322) 2026-03-12 21:43:14 +01:00
Vanilagy 0bfba89161 Bump patch v1.39.1 2026-03-11 16:29:54 +01:00
Vanilagy 93e9c256ab Maybe this helps a little 2026-03-11 16:28:44 +01:00
Vanilagy c4bce00c4f Bump minor v1.39.0 2026-03-09 20:04:57 +01:00
Vanilagy 05ae21e5ea Add EncodedPacketSink.getFirstKeyPacket() (used to fix #314) 2026-03-09 10:19:01 +01:00
Vanilagy 31594f1977 Bump patch v1.38.1 2026-03-07 09:38:02 +01:00
Vanilagy 397c464846 Change comment 2026-03-06 16:12:30 +01:00
Vanilagy 2087658eea Add <video> element fallback case for MediaStreamVideoTrackSource, adding Firefox support 2026-03-06 16:11:59 +01:00
6a11a1302c Fix CTS=0 in fragmented fMP4 with multiple tracks (#317)
* Fix CTS=0 in fragmented fMP4 with multiple tracks

When muxing fragmented MP4 with both video and audio tracks,
compositionTimeOffset (CTS) was zero for all video samples, causing
B-frame content to display in decode order instead of presentation
order (visible judder).

Root cause: During finalize(), interleaveSamples(true) triggers
finalizeFragment() via the cross-track keyframe check in
addSampleToTrack. This writes the trun box before processTimestamps
has computed correct decodeTimestamp values, so CTS = PTS - DTS = 0.

Fix: Call processTimestamps() for all tracks at the start of
finalizeFragment(). This is safe because processTimestamps is a no-op
when the timestampProcessingQueue is empty.

Video-only fragmented muxing was unaffected because the single-track
case never triggers the cross-track keyframe check during
interleaveSamples.

Co-Authored-By: Claude Opus 4.6 <[email protected]>

* Fix the problem at the actual root

* Oopsie doopsie

---------

Co-authored-by: Claude Opus 4.6 <[email protected]>
Co-authored-by: Vanilagy <[email protected]>
2026-03-06 09:56:53 +00:00
Vanilagy 472dc113e3 Uhm v1.38.0 2026-03-05 19:58:10 +01:00
Vanilagy 193dcf0f14 Bump minor 2026-03-05 19:57:45 +01:00
Vanilagy f79834c3c1 Add frame rate-based sampling for MediaStreamVideoTrackSource, reducing the probability of files with wildly irregular FPS; add unthrottled timer primitives 2026-03-05 19:57:32 +01:00
Vanilagy 66185fed15 Clean up & clarify 2026-03-05 11:49:27 +01:00
Vanilagy 4172f81aa0 Upload FLAC artifacts in release CI 2026-03-04 21:27:21 +01:00
Vanilagy f37dd21947 Bump minor v1.37.0 2026-03-04 21:23:02 +01:00
Vanilagy a15283eaa3 Add @mediabunny/flac-encoder extension, clean up some other code, fix incorrect top-level tsconfig 2026-03-04 21:21:52 +01:00
Vanilagy e18da824ce Make test more resilient v1.36.0 2026-03-04 17:12:40 +01:00
Vanilagy 506ad0c798 Bump minor 2026-03-04 17:08:02 +01:00
Vanilagy c4398fb88c Add @mediabunny/aac-encoder extension package 2026-03-04 17:05:34 +01:00
Vanilagy 76e0703b13 Bump patch v1.35.1 2026-02-26 21:48:36 +01:00
152002bd5d fix(isobmff): write QuickTime-compliant MOV AAC sample entry (#311)
* fix(isobmff): write QuickTime-compliant MOV AAC sample entry

* Clean up logic, only version 1 sample description box was needed, remove bloaty tests

---------

Co-authored-by: Vanilagy <[email protected]>
2026-02-26 21:48:11 +01:00
Vanilagy adc2f125bf Bump minor v1.35.0 2026-02-25 17:20:06 +01:00
Vanilagy bb4749cd8d Add support for reading/writing non-square pixel video frames (fixes #309) 2026-02-25 17:16:33 +01:00
Vanilagy a7dc2c198b Bump patch v1.34.5 2026-02-24 13:13:34 +01:00
Vanilagy 89afa1e2a6 Make worker_threads dynamic imports direct and keep them in the bundle (externalized), & mark them as ignored for browser builds (fixes #306) 2026-02-24 13:11:16 +01:00
31147d6e96 fix: surface StreamTarget write errors instead of swallowing them (#305)
* fix: await StreamTarget writes to prevent overlapping OPFS operations

* no need for flush

* preserve fire and forget writes

* Remove pendingWrites, add missing mutex acquire to ADTS muxer finalize method

---------

Co-authored-by: Vanilagy <[email protected]>
2026-02-24 11:21:13 +00:00
Vanilagy 48f9bda91a Add Tella gold sponsor 2026-02-24 11:07:05 +01:00
Vanilagy 6a4e86698e Bump patch v1.34.4 2026-02-17 12:35:49 +01:00
Vanilagy 317193452c Fix Webpack erroring with worker_threads import, unref Worker so process can terminate 2026-02-17 12:34:45 +01:00
Vanilagy 4928779ba1 Add Screen Studio gold sponsor v1.34.3 2026-02-16 21:04:41 +01:00
Vanilagy 703858fc4e Bump patch, fix broken remote resource link 2026-02-16 20:59:33 +01:00
Vanilagy df5efa0442 Fix test 2026-02-16 15:34:42 +01:00
Vanilagy ddc826e6e3 MPEG-TS muxer: Write out DTS for video tracks (fixes buggy QuickTime behavior) 2026-02-16 15:30:23 +01:00
2876197631 Fix WaveDemuxer reading too far in corrupted ID3 chunk (#301)
* Update read-mp4.test.ts

* Fix the bug

* Delete read-wav.test.ts

* Submit test file

* Small adjustments

---------

Co-authored-by: Vanilagy <[email protected]>
2026-02-16 10:48:07 +00:00
Vanilagy e3906a3e36 Bump patch AGAIN v1.34.2 2026-02-12 18:54:42 +01:00
Vanilagy 46bd70b880 Bump patch, add bunny v1.34.1 2026-02-12 18:50:00 +01:00