Vanilagy
7d9c063105
Small commit
2026-04-17 09:34:06 +02:00
Vanilagy
c6e505a6fe
Make default keyFrameInterval 2 seconds to align with default HLS segment duration
2026-04-13 17:47:48 +02:00
Vanilagy
0813bcab28
Add missing doc blocks for everything, add PathedTarget and PathedSource, few other changes & fixes
2026-04-09 15:22:45 +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
fdb5f4102f
Add new createInputFrom helper function
2026-04-08 14:52:27 +02:00
Vanilagy
bee1518100
Add TrackDescriptor concept
2026-04-08 12:21:08 +02:00
Vanilagy
27ec0cfec1
Update todo
2026-04-01 17:17:22 +02:00
Vanilagy
340b5eede7
Add support for writing Unix epoch-relative tracks to HLS, add proper cleanup of all Targets obtained by an Output
2026-03-31 15:12:38 +02:00
Vanilagy
b06e407d65
Add HLS live mode
2026-03-31 14:13:00 +02:00
Vanilagy
3bcbcc13f0
Add CMAF format and CMAF/init segment support to HLS muxer
2026-03-30 17:06:57 +02:00
Vanilagy
7b70756961
Remove superfluous end pos seeks, fix validation bug
2026-03-27 21:29:47 +01:00
Vanilagy
e2e8aaab78
Refactor Target and Writer, add single-file HLS writing mode
2026-03-27 18:07:26 +01:00
Vanilagy
17fac170c1
Add some HLS events, add configurable target duration, add public-API OutputTrack
2026-03-27 13:37:14 +01: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
a9a455e132
Add metadata-based duration retrieval
2026-03-13 17:03:36 +01:00
Vanilagy
ff523c01c8
Add HLS reading tests, InputTrack.hasOnlyKeyPackets, faster whole-file reading
2026-03-10 13:32:52 +01:00
Vanilagy
c088a31384
Various fixes
2026-03-06 15:49:24 +01:00
Vanilagy
6d5821aa74
Clean up some code, add new source getting for Input
2026-03-04 09:34:37 +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
9fd82c3448
Make maxWorkerCount strict, queue reads if no worker is free
2026-02-24 20:29:09 +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
d1fbea3e19
[WIP] Add majority of logic for HLS reading support
2026-01-27 14:45:44 +01:00
Vanilagy
202cd3e09b
Add social links
2025-07-02 21:27:45 +02:00
Vanilagy
a3d73228e2
Add proper license
2025-06-27 13:14:11 +02:00
Vanilagy
b0a6cf8535
Add support for HEVC in Annex B, fix HEVC codec string extraction logic
2025-05-12 14:56:34 +02:00
Vanilagy
f1eed5aa9e
Support AVC in Annex B format, add AVCDecoderConfigurationRecord extraction logic, add Annex B to AVCC converter, add support for Matroska Clusters with undefined size, & a couple other improvements
2025-05-11 20:47:37 +02:00
Vanilagy
8de25036b8
Automatically close new VideoFrames created by toCanvasImageSource, reduce clones in mediaSamplesAtTimestamps
2025-05-09 15:31:18 +02:00
Vanilagy
94b797e227
TEMP timestamp iterator bugfix
2025-05-03 21:43:29 +02:00
Vanilagy
ac1b009486
Implement "cross-track offset" for MediaStreamTrack sources & small fixes
2025-04-28 18:31:53 +02:00
Vanilagy
ca77ce2d94
Validate types returned by custom coders, refactor custom coder call serialization logic, improve metadata validation
2025-04-28 17:31:56 +02:00
David Payr
69751e8bfe
Add todo
2025-04-14 13:06:56 +02:00
Vanilagy
ceb2528014
Add specific, per-output-format data callbacks & rewrite some logic in the process
2025-03-22 20:30:24 +01:00
Vanilagy
b14daf6dca
Add configurable minimum MP4 fragment duration and Matroska cluster duration
2025-03-22 15:33:00 +01:00
Vanilagy
1652b4f614
More intentional codec description extraction for Matroska, & generate CodecPrivate for VP9
2025-03-22 14:50:35 +01:00
Vanilagy
4645b0d6a5
Allow Matroska clusters that don't begin with a key frame
2025-03-21 22:50:57 +01:00
David Payr
3863ffe4d8
Add documentation comments everywhere
2025-03-15 17:12:42 +01:00
Vanilagy
00975b456c
Fix error when aborting conversion, expose Conversion class for more control, refactor Output state
2025-03-02 17:32:56 +01:00
Vanilagy
453f8b6884
Ensure rotation is always clockwise, make CanvasSink more powerful, disable rotation metadata for Matroska outputs, & other changes
2025-03-02 11:59:11 +01:00
David Payr
c2b20ccda5
EncodedVideoSample/EncodedAudioSample -> EncodedPacket
2025-02-22 19:54:59 +01:00
Vanilagy
5d1866653c
Todo
2025-02-21 22:25:28 +01:00
Vanilagy
7988b6c2f8
Multiple miscellaneous fixes
2025-02-18 22:13:21 +01:00
Vanilagy
873dae00c1
Add more relaxed rules for edit lists
2025-02-16 18:55:47 +01:00
David Payr
444770d4f8
todo
2025-02-13 16:12:42 +01:00
David Payr
fff9589bfb
Todo
2025-02-13 09:50:05 +01:00
Vanilagy
9f6d561772
Add StreamSource
2025-02-09 17:34:59 +01:00
Vanilagy
6cdaa06c07
Add limited edit list support
2025-02-09 17:21:41 +01:00
Vanilagy
2d4df211d8
Support rotation metadata in Matroska muxer
2025-01-11 20:07:31 +01:00
Vanilagy
11d41fcbc7
Fix interleaving of chunks in finalize()
2025-01-11 19:57:31 +01:00
Vanilagy
c38c285eab
Add Matroska demuxer
2025-01-11 19:39:01 +01:00
Vanilagy
316e16211b
Add onread callback
2025-01-04 14:46:53 +01:00