Commit Graph
53 Commits
Author SHA1 Message Date
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 95e9dc5210 MORE CODE REVIEW 2026-04-16 18:27:51 +02:00
Vanilagy 7080b79a2a Update docs a bunch, fix some typos 2026-04-15 14:36:53 +02:00
Vanilagy 8241820a4f Remove unnecessary sync getters 2026-04-15 09:16:40 +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 aa810fc433 Fix SourceRef race conditions, fix "source" and "target" getter returning unused instances, add missing validation, make "getDurationFromMetadata" only exist on tracks, fix examples, expand media player to support live playback, change the signatures of some Input APIs 2026-04-10 13:38:14 +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 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 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 c91718cdba Add SourceRef system to keep track of used Sources (fixes #332) 2026-03-20 14:46:12 +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 ff523c01c8 Add HLS reading tests, InputTrack.hasOnlyKeyPackets, faster whole-file reading 2026-03-10 13:32:52 +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 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 6004912f3d Make computeDuration and getFirstTimestamp have the same implementations across the board 2026-01-27 16:49:25 +01:00
Vanilagy d1fbea3e19 [WIP] Add majority of logic for HLS reading support 2026-01-27 14:45:44 +01:00
Vanilagy 7e8f9fbbb1 It's 2026 2026-01-16 17:02:12 +01:00
Vanilagy 888441232d Implement the bulk of the MPEG-TS demuxer, add a bunch of tests, and a few other things 2026-01-14 12:05:39 +01:00
Vanilagy a043f410fd Make samples disposable 2025-09-24 21:41:52 +02:00
Vanilagy 608c769a7e Add explicit disposability to Inputs (#126) 2025-09-21 20:18:59 +02:00
Vanilagy c6cb8f7b43 Document metadata tags 2025-09-05 22:27:46 +02:00
Vanilagy bd99d8f28f Add metadata tests, fix a few bugs 2025-09-05 21:42:26 +02:00
Vanilagy b58476b1b0 Renaming 2025-09-05 18:59:13 +02:00
Vanilagy 034a7254d2 Merge branch 'main' into metadata 2025-09-03 21:12:16 +02:00
Vanilagy a2a30c3e92 Add API doc generator, improve documentation across the board 2025-09-03 18:11:43 +02:00
Vanilagy ef95960e13 Add support for unsized sources, add ReadableStreamSource, fix WAVE packet lookup 2025-09-02 16:39:38 +02:00
Vanilagy cba0525e51 Reorder stuff, rename stuff, add license header 2025-08-29 22:52:27 +02:00
Vanilagy c222973571 Implement improved StreamSource, restructure source code (hah, get it?) 2025-08-29 22:50:24 +02:00
Vanilagy c93755def1 Implement ReadOrchestrator class, add highly optimized UrlSource 2025-08-29 19:39:50 +02:00
Vanilagy 641cdd02e3 Add new slice-based reader system, port all demuxers to new reader system, add optimized BlobSource 2025-08-28 17:24:31 +02:00
Vanilagy fb0c41aa09 Implement MP3 metadata (ID3v1/2) read & write 2025-08-25 17:43:40 +02:00
Vanilagy 846fa0b183 Adjust legal comment 2025-06-27 13:22:19 +02:00
Vanilagy a3d73228e2 Add proper license 2025-06-27 13:14:11 +02:00
Vanilagy a7386fc6c3 Add file compression example 2025-06-01 18:14:37 +02:00
David Payr 1e3a618c26 Small adjustments to getSize change 2025-04-15 15:11:11 +02:00
Yonatan Bendahan 9a5e29ae11 make source readonly 2025-04-15 15:13:31 +03:00
Yonatan Bendahan 9738329f73 make getSize and input source public 2025-04-15 15:09:15 +03:00
David Payr 3863ffe4d8 Add documentation comments everywhere 2025-03-15 17:12:42 +01:00
Vanilagy c38c285eab Add Matroska demuxer 2025-01-11 19:39:01 +01:00
David Payr cc87dbfcf9 Add some more argument validation 2024-12-29 02:21:54 +01:00
David Payr b7d8c526da Update declaration file 2024-12-29 01:26:26 +01:00
David Payr 03389a6eba Add audio drains & various fixes and adjustments 2024-12-22 15:16:44 +01:00