Vanilagy
|
65ff4d0106
|
Add docs for custom coders
|
2025-05-09 17:03:25 +02:00 |
|
Vanilagy
|
8de25036b8
|
Automatically close new VideoFrames created by toCanvasImageSource, reduce clones in mediaSamplesAtTimestamps
|
2025-05-09 15:31:18 +02:00 |
|
Vanilagy
|
8bca9b0217
|
Rewrite mediaSamplesAtTimestamps to fix B-frame bug, fix incorrect timestamps when cloning samples
|
2025-05-09 14:20:29 +02:00 |
|
Vanilagy
|
865fdcf110
|
Fix async race condition bug
|
2025-05-08 16:23:07 +02:00 |
|
Vanilagy
|
94b797e227
|
TEMP timestamp iterator bugfix
|
2025-05-03 21:43:29 +02:00 |
|
Vanilagy
|
c8bb1f6e97
|
Clean up PCM code
|
2025-04-28 20:48:50 +02:00 |
|
Vanilagy
|
1d2192bd9a
|
Document cross-track offset
|
2025-04-28 20:29:31 +02:00 |
|
Vanilagy
|
86231bf6e2
|
Dry some code
|
2025-04-28 20:03:18 +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 |
|
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
|
cf19e0dcf1
|
Add docs on packets and samples
|
2025-04-28 12:14:55 +02:00 |
|
Vanilagy
|
64294655d9
|
Add documentation for reading files
|
2025-04-28 12:14:06 +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 |
|
David Payr
|
1e3a618c26
|
Small adjustments to getSize change
|
2025-04-15 15:11:11 +02:00 |
|
 VanilagyandGitHub
|
2f0e686a0f
|
Merge pull request #3 from yonathan06/main
public getSize and input source
|
2025-04-15 15:07:44 +02:00 |
|
David Payr
|
69751e8bfe
|
Add todo
|
2025-04-14 13:06:56 +02:00 |
|
Vanilagy
|
03b9c6c9ae
|
Adjust media sink max queue size logic to prevent playback stalls
|
2025-04-11 19:19:49 +02:00 |
|
Vanilagy
|
20c53c407f
|
Fix codec validation logic
|
2025-04-05 17:10:49 +02:00 |
|
Vanilagy
|
3f8a907c7f
|
Update media sources docs
|
2025-04-05 16:58:51 +02:00 |
|
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
|
5e224510be
|
Add documentation on writing files
|
2025-03-31 21:21:10 +02:00 |
|
Vanilagy
|
a64ebab435
|
Small monotonicity adjustments
|
2025-03-29 12:01:03 +01:00 |
|
David Payr
|
53e8ce5cac
|
Begin work on documentation
|
2025-03-29 11:47:21 +01: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
|
bbc2e088ca
|
Refactor UrlSource to use fetch instead of XHR & offer more options
|
2025-03-22 16:26:04 +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 |
|
David Payr
|
6eb5c02591
|
Add VideoSample and AudioSample abstractions
|
2025-03-13 21:46:39 +01:00 |
|
Vanilagy
|
d833b5ef31
|
Make use of OffscreenCanvas
|
2025-03-02 19:30:09 +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
|
5d1866653c
|
Todo
|
2025-02-21 22:25:28 +01:00 |
|
Vanilagy
|
7988b6c2f8
|
Multiple miscellaneous fixes
|
2025-02-18 22:13:21 +01:00 |
|
Vanilagy
|
3848a59ec3
|
0-duration VideoFrame
|
2025-02-16 19:03:36 +01:00 |
|
Vanilagy
|
873dae00c1
|
Add more relaxed rules for edit lists
|
2025-02-16 18:55:47 +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 |
|
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
|
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
|
02ac371011
|
Drop frames if encoded is overloaded
|
2025-02-09 17:40:07 +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
|
f750bcfa21
|
Fix incorrect timestamp rounding for audio
|
2025-02-09 14:42:08 +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 |
|
Vanilagy
|
b4d4c71916
|
Add reusable Opus identification header parsing function
|
2025-02-07 20:14:01 +01:00 |
|
Vanilagy
|
50442691a5
|
Implement Ogg demuxer
|
2025-02-04 16:59:25 +01:00 |
|
Vanilagy
|
35c4d384cf
|
Mime type & MP3 improvements
|
2025-02-02 17:21:57 +01:00 |
|
Vanilagy
|
ffd0835e9a
|
Add support for custom encoders & decoders
|
2025-01-26 17:32:10 +01:00 |
|
Vanilagy
|
bb9f56b1f0
|
Remove unused fields
|
2025-01-26 13:22:14 +01:00 |
|
Vanilagy
|
b759fd8808
|
Add toDataView
|
2025-01-26 12:03:23 +01:00 |
|
Vanilagy
|
d3566305df
|
Implement MP3 muxer
|
2025-01-26 11:45:56 +01:00 |
|
Vanilagy
|
7205d9445b
|
Implement MP3 demuxer
|
2025-01-26 10:01:09 +01:00 |
|
Vanilagy
|
387c4dc525
|
isobmffReader -> metadataReader
|
2025-01-19 18:56:45 +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
|
45474764ca
|
Add explanatory comment
|
2025-01-12 16:57:31 +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
|
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 |
|
David Payr
|
fbe084d721
|
Minor cleanup
|
2025-01-08 14:43:16 +01:00 |
|
David Payr
|
b6b82084d4
|
Drain -> Sink
|
2025-01-08 14:26:49 +01:00 |
|
Vanilagy
|
dc81afa1d9
|
Drop big-endian PCM support for WaveDemuxer
|
2025-01-07 22:23:04 +01:00 |
|
Vanilagy
|
e1c070fe7b
|
Move RiffWriter into separate file
|
2025-01-07 22:20:33 +01:00 |
|
Vanilagy
|
9d51a896ae
|
Make sure encoders are ensured only once
|
2025-01-07 21:58:30 +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
|
7c65c2e7e9
|
Slightly modify input formats
|
2025-01-06 19:45:47 +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
|
316e16211b
|
Add onread callback
|
2025-01-04 14:46:53 +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
|
2e8d49f900
|
Add SampleRetrievalOptions to samples iterator
|
2025-01-04 01:11:01 +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
|
f6d12390cd
|
Fix audio tracks with channel count 1 being discarded
|
2025-01-02 23:53:22 +01:00 |
|
Vanilagy
|
676ceb7df1
|
Add some try-catch
|
2025-01-02 23:47:50 +01:00 |
|