Vanilagy
d44253c7d3
Fix incomplete parsing and generation of AacAudioSpecificConfig ( fixes #471 )
2026-08-26 13:40:14 +02:00
Vanilagy
3c4f4c27a3
Slightly restructure code
2026-08-21 20:06:28 +02:00
Vanilagy
dc068a0aa8
Add computeFrameRateMetrics and heuristics to determine a video's true frame rate
2026-08-12 16:10:28 +02:00
Vanilagy
bfd4059c22
Add advanced access unit delimination logic to MPEG-TS demuxer ( fixes #414 ), ignore irrelevant PIDs in MPEG-TS metadata reading
2026-06-17 17:16:39 +02:00
Vanilagy
a0574fa09a
Fix decoded audio always starting at 0, fix startTimestamp=0 for ranged media iterators ( fixes #370 )
2026-05-13 18:54:45 +02:00
Vanilagy
782d3e134b
Use edit lists to model non-zero start timestamps for regular MP4 ( fixes #336 ); fix MP4 PCM logic breaking down with approximate packet timestamps
2026-04-30 10:32:42 +02:00
Vanilagy
2d49122277
Sanitize initial HEVC packet to avoid Chromium's validation logic from tripping up ( #314 )
2026-04-29 11:37:56 +02:00
Vanilagy
493ef50820
Add support for SAMPLE-AES and SAMPLE-AES-CTR decryption, add "Common Encryption" support to ISOBMFF demuxer, add InputFormatOptions, rewrite ISOBMFF track codec resolution
2026-04-22 16:54:49 +02:00
Vanilagy
2b3e5f45c6
Remove createInputFrom, changed meaning of PathedSource, add CustomPathedSource
2026-04-21 13:22:10 +02:00
Vanilagy
2a2b6450c9
Add better doc blocks, special deprecated logic for API doc generation, add multi-tiered SegmentedInput hydration for reducing file request count, ditch VirtualInputFormat indirection
2026-04-13 17:25:46 +02:00
Vanilagy
051578c2ca
Remove input track descriptors, add async getters on tracks for everything, deprecate old sync getters
2026-04-10 16:23:17 +02:00
Vanilagy
7d053ae50d
Add ConversionOptions.tracks, add better converstion start timestamp computation, optimize endPacket logic, utilize metadata duration for progress callback for better performance
2026-04-08 17:07:02 +02:00
Vanilagy
5bc1a31b8e
Rewrite HLS segmentation algo AGAIN, add a bunch of HLS segmentation tests, add VideoEncoder/AudioEncoder timing refinement logic, fix HLS output spec violations
2026-03-26 16:23:07 +01:00
Vanilagy
3e87d747e6
Add HLS master playlist generation, add multi-playlistadd output track grouping, add multi-playlist HLS files, add configurable playlist and segment names, add TrackDisposition.primary
2026-03-24 15:53:21 +01:00
Vanilagy
a9a455e132
Add metadata-based duration retrieval
2026-03-13 17:03:36 +01:00
Vanilagy
c43ca025d9
Add proper reference count-based source disposal system
2026-03-12 21:29:01 +01:00
Vanilagy
e8df451bf5
Add support for live HLS streams, add playlist refresh logic, add live input tracks
2026-03-12 15:54:19 +01:00
Vanilagy
c088a31384
Various fixes
2026-03-06 15:49:24 +01:00
Vanilagy
dc4e557776
Read #EXT-X-PROGRAM-DATE-TIME, add Unix epoch-offset timestamps, parallelize HLS master playlist resolution
2026-03-04 11:08:42 +01:00
Vanilagy
cfb5418fa0
Refactor HLS API: Get rid of specialized Manifest* classes, use Input instead. Add unhydrated InputTracks, InputTrack compatibility, InputTrack queries
2026-03-03 15:28:26 +01:00
Vanilagy
68b3ae7155
A BUNCH of HLS (and related) progress
...
- Add support for fMP4 segments
- Add initInput (supported by ISOBMFF and MPEG-TS)
- Input.isSupported()
- Refactored file size retrieval logic, the file size can now be retrieved alongside the first read.
- Add support for unsized UrlSources
- Add support for multiple trun boxes in a row for the same track (as the spec literally says lol)
- Add support for more M3U8 features
- Fix faulty line reader
- MPEG-TS improvements: support video parameters not in first packet, support better key frame detection, support extension PES packets without PTS
- Fix reorder buffer being 1 element too small
2026-02-20 19:56:20 +01:00
Vanilagy
de84d78092
Merge branch 'main' into hls
2026-02-16 15:55:59 +01:00
Vanilagy
a97200f3f0
Add @mediabunny/ac3 extension package
2026-02-12 18:31:59 +01:00
Vanilagy
d1fbea3e19
[WIP] Add majority of logic for HLS reading support
2026-01-27 14:45:44 +01:00
Vanilagy
6c78a0ff09
Fix HEVC not being encodable in CI
2026-01-19 10:25:57 +01:00
Vanilagy
282751ec1c
Set discontinuity_indicator to 1 for the first packet
2026-01-16 16:56:50 +01:00
Vanilagy
e8b27768a9
Add MPEG-TS muxer, fix a demuxer bug, remove Infinity from output format track counts
2026-01-16 16:33:28 +01:00
Vanilagy
ae37973878
MPEG-TS demuxer optimizations: faster Annex B segmentation, better NALU iteration
2026-01-16 13:26:58 +01:00
Vanilagy
c0f2693cb3
Add HEVC support to MPEG-TS demuxer
2026-01-16 10:05:40 +01:00
Vanilagy
54dfa75a7e
Add proper packet duration extraction to MPEG-TS demuxer
2026-01-15 16:33:17 +01:00
Vanilagy
0719a17c85
Add mutex to packet lookup algorithm, fix incorrect next packet retrieval following packet lookup
2026-01-14 21:53:23 +01:00
Vanilagy
f363fe50e2
WIP
2026-01-05 11:41:32 +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
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
217b383f12
Add read/write support for track disposition information
2025-11-13 11:00:42 +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
12216ae29e
Remove reordering Matroska blocks by references ( fixes #178 )
2025-11-12 10:49:47 +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
8b39eb0d43
Revert Matroska default duration flooring
2025-11-10 21:14:43 +01:00
Vanilagy
c0da28fb6c
Floor Matroska default packet duration ( fixes #170 )
2025-11-10 16:14:25 +01:00
Vanilagy
5039c730bf
Fix MediaStreamTracks not being stopped inside of the worker ( fixes #204 )
2025-11-02 13:00:38 +01:00
Vanilagy
198928088b
Make cluster/fragment lookup operations almost stateless, fix high Matroska memory, allow more maxCacheSizes
2025-09-29 20:36:37 +02:00
Vanilagy
537119357d
Add strict slice range validation, fix RF64 reading error ( fixes #146 )
2025-09-25 10:26:44 +02:00
David P. and GitHub
fa4e064345
Transparent video read/write support ( #145 )
...
* Add support for reading transparent Matroska and implement alpha side data & decode
* Few fixes
* Implement alpha encoding
* Gracefully handle inability to acquire WebGL context, properly clean up WebGL contexts
* Improve touch device detection
* Test test
* Test test #2
* Test test 3
* Test test 4
* Test test 5
* Test test 6
* Test test 7
* Test test 8
* Test test 9
* Test test 10
* Test test 11
* Test test 12
* Test test 13
* Test test 14
* Test test 15
* Test test 16
* Test test 17
* Test test 18
* Test test 19
* Test test 20
* Fix type errors, improve MetadataTags docs
* Do a bunch of docs work
* Test test?
* "Unexpected only modifier 🤓 "
* Add InputVideoTrack.canBeTransparent()
* Some clean-up
* Adjust CI to be less spammy in PRs
* Fix broken license headers
2025-09-24 21:20:14 +02:00
Vanilagy
608c769a7e
Add explicit disposability to Inputs ( #126 )
2025-09-21 20:18:59 +02:00
Vanilagy
a3f4f7f4f7
Allow all Matroska AttachedFiles to be read & written via metadata tags
2025-09-19 20:12:29 +02:00
Vanilagy
eb1ce86187
Fix faulty MP3 bitrate and frame size calculation ( fixes #134 )
2025-09-19 13:20:36 +02:00
420423bc0f
feat: Add support for custom MP4 metadata with mdta format ( #132 )
...
* feat: Add support for custom MP4 metadata with mdta format
- Add metadataFormat option ('mdir' | 'mdta') to IsobmffOutputFormatOptions
- Implement complete mdta format with keys box generation
- Enable custom metadata fields readable by ffmpeg/ffprobe
- Maintain backward compatibility with default mdir format
* Refactor ISOBMFF metadata tag writing logic
* Autism
---------
Co-authored-by: tanfu <[email protected] >
Co-authored-by: Vanilagy <[email protected] >
2025-09-18 23:41:08 +02:00
Vanilagy
6d5bd58ae8
Add support for header removal content compression in Matroska
2025-09-17 23:09:04 +02:00
Vanilagy
fcec67645a
Allow object for tags field in conversion
2025-09-16 15:10:16 +02:00