Commit Graph
81 Commits
Author SHA1 Message Date
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 7f8770de99 Fix regular Language element in Matroska not having an effect anymore 2025-08-27 08:56:41 +02:00
Vanilagy 803e58a0d2 Add internalCodecId field 2025-08-23 16:24:36 +02:00
Vanilagy e6420caea4 Add support for LanguageBCP47 2025-08-23 15:58:58 +02:00
Vanilagy bb1b20afa7 Add track name support 2025-08-23 15:33:44 +02:00
Vanilagy a56dca10d9 Use SimpleBlock in almost all cases now (cries a little inside) (fixes #62) 2025-08-22 15:32:05 +02:00
Vanilagy 2d62395fc0 Fix faulty faulty lookup table logic (addresses #70) 2025-08-22 14:20:57 +02:00
Vanilagy bb9554df60 Handle ISOBMFF boxes with no size 2025-08-20 15:12:25 +02:00
Vanilagy 5782219941 Add Matroska resync logic for malformed files, add RVE sponsor 2025-08-20 13:38:54 +02:00
Vanilagy 16c8a6c255 Gracefully handle invalid EBML headers 2025-08-13 09:46:27 +02:00
Vanilagy 6d447660c2 Clarify EBML strings are ASCII 2025-08-11 16:10:43 +02:00
Vanilagy a9cec387d4 Extract insertSorted function 2025-08-10 19:55:21 +02:00
Vanilagy 597b68b299 Add support for Matroska lacing, fix packet lookup logic 2025-08-08 17:10:03 +02:00
Frederick Widjaja 5b238c6d0f fix: check string for null terminators 2025-08-07 11:09:44 +07:00
Vanilagy 95091cce9c Add special top-level Cluster logic for Matroska demuxer 2025-07-28 12:03:19 +02:00
Vanilagy ac8baa4873 Fall back to default timescale when not provided by the Matroska file 2025-07-27 13:03:43 +02:00
Vanilagy 5e933d9362 Add packet type derivation logic, new verifyKeyPackets options, new determinePacketType method 2025-07-24 16:09:01 +02:00
Vanilagy b1b493ab10 Fix out of bounds reads for Matroska demuxer 2025-07-15 16:03:00 +02:00
Vanilagy 14ad80df5d Improve ISOBMFF demuxer to support fragments without a key frame 2025-07-11 10:57:24 +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 b15a5cd984 Fix incorrect cluster insertion for Matroska demuxer 2025-06-20 12:05:40 +02:00
Vanilagy befab215b4 Add "Quick start" to docs, small API and docs adjustments 2025-06-18 12:25:10 +02:00
Vanilagy 28597ea93c Yapperino 2025-06-16 20:51:58 +02:00
Vanilagy 05881ff1f5 Add support for PCM codecs in MP4, add 64-bit float PCM support 2025-06-16 10:49:55 +02:00
Vanilagy c7c57e2132 Add getMimeType to Output & other small adjustments 2025-06-07 22:51:57 +02:00
Vanilagy 550b849235 Rename 2025-05-12 15:16:30 +02:00
Vanilagy fd159ecce3 Migrate all codec data parsing logic into new file 2025-05-12 15:09:04 +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 e527fe1484 Allow fractional frame rates in track metadata, document frameRate better, other small doc adjustments 2025-04-28 15:48:51 +02:00
Vanilagy 30e1e29ca6 Merge branch 'main' of https://github.com/Vanilagy/metamuxer 2025-04-25 17:35:05 +02:00
Vanilagy 7fe0593b6c Fix EBML parsers for large integers, make small API and docblock adjustments 2025-04-25 17:35:03 +02:00
Yonatan Bendahan 9738329f73 make getSize and input source public 2025-04-15 15:09:15 +03: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 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 7988b6c2f8 Multiple miscellaneous fixes 2025-02-18 22:13:21 +01:00
Vanilagy a4c5ab4a8c Add fix to ensure VideoFrames are output in timestamp order, fix atTimestamps iterator logic & leaks 2025-02-16 18:30:14 +01:00
Vanilagy 0db871dd21 Implement Ogg muxer 2025-02-09 10:56:54 +01:00
Vanilagy cd30c9faec Unpromise many input track methods 2025-02-08 16:32:34 +01:00
Vanilagy 1d823805cf Remove sample correlation logic in decoder pipeline 2025-02-08 15:55:54 +01:00