Commit Graph
76 Commits
Author SHA1 Message Date
Vanilagy 97e2a9c1ba Add fullCodecString and rename other config field 2025-04-05 16:49:58 +02:00
Vanilagy c95058e659 Add onEncoderConfig 2025-04-05 15:16:48 +02:00
Vanilagy 95cc8beb06 Fix chunked writing issues & drop ChunkedStreamTargetWriter 2025-03-26 21:35:19 +01: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 4645b0d6a5 Allow Matroska clusters that don't begin with a key frame 2025-03-21 22:50:57 +01:00
David Payr 6eb5c02591 Add VideoSample and AudioSample abstractions 2025-03-13 21:46:39 +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 2ab385b16e Fix cslg box for QuickTime compatibility 2025-02-26 22:46:44 +01:00
David Payr c2b20ccda5 EncodedVideoSample/EncodedAudioSample -> EncodedPacket 2025-02-22 19:54:59 +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 557314c640 digest -> add 2025-02-09 17:59:30 +01:00
Vanilagy b3cd4de1f6 Make conversion cancelable 2025-02-09 17:55:59 +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 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 ffd0835e9a Add support for custom encoders & decoders 2025-01-26 17:32:10 +01:00
Vanilagy d3566305df Implement MP3 muxer 2025-01-26 11:45:56 +01:00
Vanilagy 70b88332b2 Add media conversion utility function, fix fragment/cluster reading issues, expand color space logic, add qualitative bitrates, & many other fixes and improvements 2025-01-19 18:55:12 +01:00
Vanilagy d323c2be8e Add track count limit checking 2025-01-17 12:26:12 +01:00
Vanilagy 7b6567fcf0 Add language getter to InputTrack 2025-01-15 20:21:34 +01:00
Vanilagy 2bec661985 Add setting track language code, add proper AV1 CodecPrivate for Matroska muxer 2025-01-15 20:00:29 +01:00
Vanilagy 9af3e6eb66 Fix atTimestamps iterator 2025-01-14 21:23:37 +01:00
Vanilagy 9c501808b1 Add WebMInputFormat, add OutputFormat.getFileExtension() 2025-01-12 16:52:28 +01:00
Vanilagy aea808ca0c Adjust timestamp logic for media sinks for more accurate audio timing 2025-01-12 16:41:42 +01:00
Vanilagy 764a6dfd52 Replace block sorting algorithm 2025-01-12 15:40:05 +01:00
Vanilagy 2dfb595911 Improve lookup algorithm to handle misleading cue points, fix cluster start timestamp in Matroska muxer, improve cue points in Matroska muxer, & other misc improvements 2025-01-12 15:17:21 +01:00
Vanilagy 61a4f1483a Add VP9 and AV1 bitstream parsers for extracting codec info 2025-01-11 21:28:10 +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
David Payr b6b82084d4 Drain -> Sink 2025-01-08 14:26:49 +01:00
Vanilagy 7d5957957e Add WAVE muxer 2025-01-07 21:37:55 +01:00
Vanilagy 3041989cf3 Add WAVE demuxer 2025-01-07 20:57:16 +01:00
Vanilagy 48c9a225e2 Improve encoders and check availability 2025-01-06 21:22:15 +01:00
Vanilagy 00408c86ff Add support for remaining audio codecs to Matroska muxer 2025-01-06 21:09:12 +01:00
Vanilagy 2625dc7662 Implement PCM encoders 2025-01-05 15:58:20 +01:00
Vanilagy 37820f1d4c Replace ArrayBufferTarget with BufferTarget, now spitting out Uint8Array and using .resize 2025-01-05 14:24:06 +01:00
Vanilagy ee81e1b674 Add support for all audio codecs in the ISOBMFF muxer (& some fixes) 2025-01-05 13:50:50 +01:00
Vanilagy 3487bae4fe Add cslg box 2025-01-04 14:43:26 +01:00
Vanilagy b8c0d76503 Add compileSampleStats 2025-01-04 14:25:22 +01:00
Vanilagy 5bb9f8609c Allow non-zero initial timestamps for ISOBMFF muxer 2025-01-04 14:02:45 +01:00
Vanilagy 1145e0ebbe Use new sample classes for muxers as well 2025-01-04 00:28:54 +01:00
Vanilagy e83356662e Add own encoded sample classes and port the code to them 2025-01-04 00:14:34 +01:00
Vanilagy a3f19f6f08 Oops 2025-01-02 23:31:06 +01:00
Vanilagy 74369ee108 Explicitly model the supported codecs per output format 2025-01-02 21:03:17 +01:00
Vanilagy 022b157eeb Turn AudioBuffers into AudioData in a chunked fashion 2025-01-02 19:28:43 +01:00
Vanilagy 0f25dcb096 Add methods that check decodability 2025-01-02 19:08:09 +01:00
Vanilagy af26b4aab4 Fix fragment reading bug 2025-01-02 18:16:06 +01:00