@dragon708/docmind-markdown 1.2.5 → 1.2.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/node_modules/music-metadata/LICENSE.txt +3 -3
- package/node_modules/music-metadata/README.md +246 -690
- package/node_modules/music-metadata/lib/ParserFactory.d.ts +31 -27
- package/node_modules/music-metadata/lib/ParserFactory.js +219 -108
- package/node_modules/music-metadata/lib/aiff/AiffParser.d.ts +2 -2
- package/node_modules/music-metadata/lib/aiff/AiffParser.js +38 -34
- package/node_modules/music-metadata/lib/aiff/AiffTagMap.d.ts +1 -1
- package/node_modules/music-metadata/lib/aiff/AiffTagMap.js +7 -2
- package/node_modules/music-metadata/lib/aiff/AiffToken.d.ts +6 -32
- package/node_modules/music-metadata/lib/aiff/AiffToken.js +17 -27
- package/node_modules/music-metadata/lib/apev2/APEv2Parser.d.ts +8 -24
- package/node_modules/music-metadata/lib/apev2/APEv2Parser.js +66 -78
- package/node_modules/music-metadata/lib/apev2/APEv2TagMapper.d.ts +1 -1
- package/node_modules/music-metadata/lib/apev2/APEv2TagMapper.js +8 -4
- package/node_modules/music-metadata/lib/apev2/APEv2Token.d.ts +11 -10
- package/node_modules/music-metadata/lib/apev2/APEv2Token.js +27 -16
- package/node_modules/music-metadata/lib/asf/AsfObject.d.ts +53 -59
- package/node_modules/music-metadata/lib/asf/AsfObject.js +131 -97
- package/node_modules/music-metadata/lib/asf/AsfParser.d.ts +1 -1
- package/node_modules/music-metadata/lib/asf/AsfParser.js +43 -42
- package/node_modules/music-metadata/lib/asf/AsfTagMapper.d.ts +2 -2
- package/node_modules/music-metadata/lib/asf/AsfTagMapper.js +10 -6
- package/node_modules/music-metadata/lib/asf/AsfUtil.d.ts +13 -4
- package/node_modules/music-metadata/lib/asf/AsfUtil.js +36 -30
- package/node_modules/music-metadata/lib/asf/GUID.d.ts +84 -0
- package/node_modules/music-metadata/lib/asf/GUID.js +121 -0
- package/node_modules/music-metadata/lib/common/BasicParser.d.ts +9 -9
- package/node_modules/music-metadata/lib/common/BasicParser.js +7 -2
- package/node_modules/music-metadata/lib/common/CaseInsensitiveTagMap.d.ts +3 -3
- package/node_modules/music-metadata/lib/common/CaseInsensitiveTagMap.js +7 -2
- package/node_modules/music-metadata/lib/common/CombinedTagMapper.d.ts +5 -5
- package/node_modules/music-metadata/lib/common/CombinedTagMapper.js +28 -24
- package/node_modules/music-metadata/lib/common/FourCC.d.ts +1 -1
- package/node_modules/music-metadata/lib/common/FourCC.js +11 -10
- package/node_modules/music-metadata/lib/common/GenericTagMapper.d.ts +13 -13
- package/node_modules/music-metadata/lib/common/GenericTagMapper.js +12 -7
- package/node_modules/music-metadata/lib/common/GenericTagTypes.d.ts +6 -7
- package/node_modules/music-metadata/lib/common/GenericTagTypes.js +85 -86
- package/node_modules/music-metadata/lib/common/MetadataCollector.d.ts +10 -20
- package/node_modules/music-metadata/lib/common/MetadataCollector.js +69 -100
- package/node_modules/music-metadata/lib/common/RandomFileReader.d.ts +22 -0
- package/node_modules/music-metadata/lib/common/RandomFileReader.js +34 -0
- package/node_modules/music-metadata/lib/common/RandomUint8ArrayReader.d.ts +18 -0
- package/node_modules/music-metadata/lib/common/RandomUint8ArrayReader.js +25 -0
- package/node_modules/music-metadata/lib/common/Util.d.ts +12 -11
- package/node_modules/music-metadata/lib/common/Util.js +53 -47
- package/node_modules/music-metadata/lib/core.d.ts +15 -42
- package/node_modules/music-metadata/lib/core.js +38 -74
- package/node_modules/music-metadata/lib/dsdiff/DsdiffParser.d.ts +1 -16
- package/node_modules/music-metadata/lib/dsdiff/DsdiffParser.js +44 -55
- package/node_modules/music-metadata/lib/dsdiff/DsdiffToken.d.ts +3 -3
- package/node_modules/music-metadata/lib/dsdiff/DsdiffToken.js +7 -4
- package/node_modules/music-metadata/lib/dsf/DsfChunk.d.ts +10 -11
- package/node_modules/music-metadata/lib/dsf/DsfChunk.js +19 -15
- package/node_modules/music-metadata/lib/dsf/DsfParser.d.ts +1 -16
- package/node_modules/music-metadata/lib/dsf/DsfParser.js +20 -21
- package/node_modules/music-metadata/lib/flac/FlacParser.d.ts +15 -16
- package/node_modules/music-metadata/lib/flac/FlacParser.js +119 -69
- package/node_modules/music-metadata/lib/id3v1/ID3v1Parser.d.ts +3 -7
- package/node_modules/music-metadata/lib/id3v1/ID3v1Parser.js +36 -39
- package/node_modules/music-metadata/lib/id3v1/ID3v1TagMap.d.ts +1 -1
- package/node_modules/music-metadata/lib/id3v1/ID3v1TagMap.js +7 -2
- package/node_modules/music-metadata/lib/id3v2/AbstractID3Parser.d.ts +2 -2
- package/node_modules/music-metadata/lib/id3v2/AbstractID3Parser.js +19 -15
- package/node_modules/music-metadata/lib/id3v2/FrameParser.d.ts +3 -64
- package/node_modules/music-metadata/lib/id3v2/FrameParser.js +103 -244
- package/node_modules/music-metadata/lib/id3v2/ID3v22TagMapper.d.ts +2 -2
- package/node_modules/music-metadata/lib/id3v2/ID3v22TagMapper.js +16 -6
- package/node_modules/music-metadata/lib/id3v2/ID3v24TagMapper.d.ts +5 -5
- package/node_modules/music-metadata/lib/id3v2/ID3v24TagMapper.js +35 -36
- package/node_modules/music-metadata/lib/id3v2/ID3v2Parser.d.ts +6 -11
- package/node_modules/music-metadata/lib/id3v2/ID3v2Parser.js +104 -91
- package/node_modules/music-metadata/lib/id3v2/ID3v2Token.d.ts +29 -67
- package/node_modules/music-metadata/lib/id3v2/ID3v2Token.js +36 -76
- package/node_modules/music-metadata/lib/iff/index.d.ts +1 -1
- package/node_modules/music-metadata/lib/iff/index.js +7 -4
- package/node_modules/music-metadata/lib/index.d.ts +31 -8
- package/node_modules/music-metadata/lib/index.js +53 -32
- package/node_modules/music-metadata/lib/lyrics3/Lyrics3.d.ts +2 -2
- package/node_modules/music-metadata/lib/lyrics3/Lyrics3.js +13 -13
- package/node_modules/music-metadata/lib/matroska/MatroskaDtd.d.ts +2 -2
- package/node_modules/music-metadata/lib/matroska/MatroskaDtd.js +242 -246
- package/node_modules/music-metadata/lib/matroska/MatroskaParser.d.ts +24 -6
- package/node_modules/music-metadata/lib/matroska/MatroskaParser.js +218 -124
- package/node_modules/music-metadata/lib/matroska/MatroskaTagMapper.d.ts +1 -1
- package/node_modules/music-metadata/lib/matroska/MatroskaTagMapper.js +7 -3
- package/node_modules/music-metadata/lib/matroska/types.d.ts +76 -43
- package/node_modules/music-metadata/lib/matroska/types.js +33 -27
- package/node_modules/music-metadata/lib/mp4/Atom.d.ts +7 -7
- package/node_modules/music-metadata/lib/mp4/Atom.js +22 -15
- package/node_modules/music-metadata/lib/mp4/AtomToken.d.ts +18 -110
- package/node_modules/music-metadata/lib/mp4/AtomToken.js +66 -184
- package/node_modules/music-metadata/lib/mp4/MP4Parser.d.ts +4 -6
- package/node_modules/music-metadata/lib/mp4/MP4Parser.js +128 -255
- package/node_modules/music-metadata/lib/mp4/MP4TagMapper.d.ts +4 -4
- package/node_modules/music-metadata/lib/mp4/MP4TagMapper.js +12 -8
- package/node_modules/music-metadata/lib/mpeg/ExtendedLameHeader.d.ts +5 -5
- package/node_modules/music-metadata/lib/mpeg/ExtendedLameHeader.js +10 -7
- package/node_modules/music-metadata/lib/mpeg/MpegParser.d.ts +4 -17
- package/node_modules/music-metadata/lib/mpeg/MpegParser.js +131 -176
- package/node_modules/music-metadata/lib/mpeg/ReplayGainDataFormat.d.ts +14 -16
- package/node_modules/music-metadata/lib/mpeg/ReplayGainDataFormat.js +19 -14
- package/node_modules/music-metadata/lib/mpeg/XingTag.d.ts +7 -6
- package/node_modules/music-metadata/lib/mpeg/XingTag.js +18 -14
- package/node_modules/music-metadata/lib/musepack/index.d.ts +5 -0
- package/node_modules/music-metadata/lib/musepack/index.js +32 -0
- package/node_modules/music-metadata/lib/musepack/sv7/BitReader.d.ts +2 -2
- package/node_modules/music-metadata/lib/musepack/sv7/BitReader.js +24 -16
- package/node_modules/music-metadata/lib/musepack/sv7/MpcSv7Parser.d.ts +1 -1
- package/node_modules/music-metadata/lib/musepack/sv7/MpcSv7Parser.js +15 -16
- package/node_modules/music-metadata/lib/musepack/sv7/StreamVersion7.d.ts +1 -1
- package/node_modules/music-metadata/lib/musepack/sv7/StreamVersion7.js +7 -5
- package/node_modules/music-metadata/lib/musepack/sv8/MpcSv8Parser.d.ts +1 -1
- package/node_modules/music-metadata/lib/musepack/sv8/MpcSv8Parser.js +17 -18
- package/node_modules/music-metadata/lib/musepack/sv8/StreamVersion8.d.ts +3 -5
- package/node_modules/music-metadata/lib/musepack/sv8/StreamVersion8.js +12 -14
- package/node_modules/music-metadata/lib/ogg/{OggToken.d.ts → Ogg.d.ts} +6 -17
- package/node_modules/music-metadata/lib/ogg/Ogg.js +2 -0
- package/node_modules/music-metadata/lib/ogg/OggParser.d.ts +12 -16
- package/node_modules/music-metadata/lib/ogg/OggParser.js +102 -101
- package/node_modules/music-metadata/lib/ogg/opus/Opus.d.ts +2 -17
- package/node_modules/music-metadata/lib/ogg/opus/Opus.js +14 -13
- package/node_modules/music-metadata/lib/ogg/opus/OpusParser.d.ts +25 -0
- package/node_modules/music-metadata/lib/ogg/opus/{OpusStream.js → OpusParser.js} +18 -18
- package/node_modules/music-metadata/lib/ogg/speex/Speex.d.ts +1 -1
- package/node_modules/music-metadata/lib/ogg/speex/Speex.js +19 -16
- package/node_modules/music-metadata/lib/ogg/speex/SpeexParser.d.ts +22 -0
- package/node_modules/music-metadata/lib/ogg/speex/{SpeexStream.js → SpeexParser.js} +13 -9
- package/node_modules/music-metadata/lib/ogg/theora/Theora.d.ts +1 -1
- package/node_modules/music-metadata/lib/ogg/theora/Theora.js +11 -8
- package/node_modules/music-metadata/lib/ogg/theora/TheoraParser.d.ts +28 -0
- package/node_modules/music-metadata/lib/ogg/theora/TheoraParser.js +44 -0
- package/node_modules/music-metadata/lib/ogg/vorbis/Vorbis.d.ts +7 -6
- package/node_modules/music-metadata/lib/ogg/vorbis/Vorbis.js +29 -34
- package/node_modules/music-metadata/lib/ogg/vorbis/VorbisDecoder.d.ts +1 -1
- package/node_modules/music-metadata/lib/ogg/vorbis/VorbisDecoder.js +9 -6
- package/node_modules/music-metadata/lib/ogg/vorbis/VorbisParser.d.ts +36 -0
- package/node_modules/music-metadata/lib/ogg/vorbis/VorbisParser.js +128 -0
- package/node_modules/music-metadata/lib/ogg/vorbis/VorbisTagMapper.d.ts +3 -3
- package/node_modules/music-metadata/lib/ogg/vorbis/VorbisTagMapper.js +9 -5
- package/node_modules/music-metadata/lib/riff/RiffChunk.d.ts +5 -5
- package/node_modules/music-metadata/lib/riff/RiffChunk.js +9 -5
- package/node_modules/music-metadata/lib/riff/RiffInfoTagMap.d.ts +2 -2
- package/node_modules/music-metadata/lib/riff/RiffInfoTagMap.js +25 -20
- package/node_modules/music-metadata/lib/type.d.ts +52 -121
- package/node_modules/music-metadata/lib/type.js +6 -2
- package/node_modules/music-metadata/lib/wav/BwfChunk.d.ts +1 -1
- package/node_modules/music-metadata/lib/wav/BwfChunk.js +11 -8
- package/node_modules/music-metadata/lib/wav/WaveChunk.d.ts +20 -50
- package/node_modules/music-metadata/lib/wav/WaveChunk.js +32 -45
- package/node_modules/music-metadata/lib/wav/WaveParser.d.ts +2 -2
- package/node_modules/music-metadata/lib/wav/WaveParser.js +39 -46
- package/node_modules/music-metadata/lib/wavpack/WavPackParser.d.ts +2 -18
- package/node_modules/music-metadata/lib/wavpack/WavPackParser.js +32 -42
- package/node_modules/music-metadata/lib/wavpack/WavPackToken.d.ts +18 -14
- package/node_modules/music-metadata/lib/wavpack/WavPackToken.js +30 -24
- package/node_modules/music-metadata/package.json +74 -81
- package/package.json +1 -5
- package/node_modules/@borewit/text-codec/LICENSE.txt +0 -9
- package/node_modules/@borewit/text-codec/README.md +0 -87
- package/node_modules/@borewit/text-codec/lib/index.d.ts +0 -6
- package/node_modules/@borewit/text-codec/lib/index.js +0 -380
- package/node_modules/@borewit/text-codec/package.json +0 -70
- package/node_modules/music-metadata/lib/ParseError.d.ts +0 -87
- package/node_modules/music-metadata/lib/ParseError.js +0 -38
- package/node_modules/music-metadata/lib/aiff/AiffLoader.d.ts +0 -2
- package/node_modules/music-metadata/lib/aiff/AiffLoader.js +0 -8
- package/node_modules/music-metadata/lib/apev2/Apev2Loader.d.ts +0 -2
- package/node_modules/music-metadata/lib/apev2/Apev2Loader.js +0 -8
- package/node_modules/music-metadata/lib/asf/AsfGuid.d.ts +0 -83
- package/node_modules/music-metadata/lib/asf/AsfGuid.js +0 -109
- package/node_modules/music-metadata/lib/asf/AsfLoader.d.ts +0 -2
- package/node_modules/music-metadata/lib/asf/AsfLoader.js +0 -8
- package/node_modules/music-metadata/lib/dsdiff/DsdiffLoader.d.ts +0 -2
- package/node_modules/music-metadata/lib/dsdiff/DsdiffLoader.js +0 -8
- package/node_modules/music-metadata/lib/dsf/DsfLoader.d.ts +0 -2
- package/node_modules/music-metadata/lib/dsf/DsfLoader.js +0 -8
- package/node_modules/music-metadata/lib/ebml/EbmlIterator.d.ts +0 -67
- package/node_modules/music-metadata/lib/ebml/EbmlIterator.js +0 -218
- package/node_modules/music-metadata/lib/ebml/types.d.ts +0 -37
- package/node_modules/music-metadata/lib/ebml/types.js +0 -8
- package/node_modules/music-metadata/lib/flac/FlacLoader.d.ts +0 -2
- package/node_modules/music-metadata/lib/flac/FlacLoader.js +0 -8
- package/node_modules/music-metadata/lib/flac/FlacToken.d.ts +0 -45
- package/node_modules/music-metadata/lib/flac/FlacToken.js +0 -63
- package/node_modules/music-metadata/lib/id3v2/FrameHeader.d.ts +0 -31
- package/node_modules/music-metadata/lib/id3v2/FrameHeader.js +0 -73
- package/node_modules/music-metadata/lib/id3v2/ID3v2ChapterToken.d.ts +0 -11
- package/node_modules/music-metadata/lib/id3v2/ID3v2ChapterToken.js +0 -17
- package/node_modules/music-metadata/lib/lrc/LyricsParser.d.ts +0 -9
- package/node_modules/music-metadata/lib/lrc/LyricsParser.js +0 -45
- package/node_modules/music-metadata/lib/matroska/MatroskaLoader.d.ts +0 -2
- package/node_modules/music-metadata/lib/matroska/MatroskaLoader.js +0 -8
- package/node_modules/music-metadata/lib/mp4/Mp4Loader.d.ts +0 -2
- package/node_modules/music-metadata/lib/mp4/Mp4Loader.js +0 -8
- package/node_modules/music-metadata/lib/mpeg/MpegLoader.d.ts +0 -2
- package/node_modules/music-metadata/lib/mpeg/MpegLoader.js +0 -8
- package/node_modules/music-metadata/lib/musepack/MusepackConentError.d.ts +0 -15
- package/node_modules/music-metadata/lib/musepack/MusepackConentError.js +0 -3
- package/node_modules/music-metadata/lib/musepack/MusepackLoader.d.ts +0 -2
- package/node_modules/music-metadata/lib/musepack/MusepackLoader.js +0 -8
- package/node_modules/music-metadata/lib/musepack/MusepackParser.d.ts +0 -4
- package/node_modules/music-metadata/lib/musepack/MusepackParser.js +0 -30
- package/node_modules/music-metadata/lib/ogg/OggLoader.d.ts +0 -2
- package/node_modules/music-metadata/lib/ogg/OggLoader.js +0 -8
- package/node_modules/music-metadata/lib/ogg/OggToken.js +0 -41
- package/node_modules/music-metadata/lib/ogg/flac/FlacStream.d.ts +0 -29
- package/node_modules/music-metadata/lib/ogg/flac/FlacStream.js +0 -74
- package/node_modules/music-metadata/lib/ogg/opus/OpusStream.d.ts +0 -24
- package/node_modules/music-metadata/lib/ogg/speex/SpeexStream.d.ts +0 -20
- package/node_modules/music-metadata/lib/ogg/theora/TheoraStream.d.ts +0 -25
- package/node_modules/music-metadata/lib/ogg/theora/TheoraStream.js +0 -39
- package/node_modules/music-metadata/lib/ogg/vorbis/VorbisStream.d.ts +0 -53
- package/node_modules/music-metadata/lib/ogg/vorbis/VorbisStream.js +0 -136
- package/node_modules/music-metadata/lib/wav/WaveLoader.d.ts +0 -2
- package/node_modules/music-metadata/lib/wav/WaveLoader.js +0 -8
- package/node_modules/music-metadata/lib/wavpack/WavPackLoader.d.ts +0 -2
- package/node_modules/music-metadata/lib/wavpack/WavPackLoader.js +0 -8
- package/node_modules/music-metadata/node_modules/file-type/core.d.ts +0 -253
- package/node_modules/music-metadata/node_modules/file-type/core.js +0 -2899
- package/node_modules/music-metadata/node_modules/file-type/index.d.ts +0 -98
- package/node_modules/music-metadata/node_modules/file-type/index.js +0 -163
- package/node_modules/music-metadata/node_modules/file-type/license +0 -9
- package/node_modules/music-metadata/node_modules/file-type/package.json +0 -290
- package/node_modules/music-metadata/node_modules/file-type/readme.md +0 -667
- package/node_modules/music-metadata/node_modules/file-type/supported.js +0 -360
- package/node_modules/music-metadata/node_modules/file-type/util.js +0 -60
- package/node_modules/music-metadata/node_modules/strtok3/LICENSE.txt +0 -21
- package/node_modules/music-metadata/node_modules/strtok3/README.md +0 -399
- package/node_modules/music-metadata/node_modules/strtok3/lib/AbstractTokenizer.d.ts +0 -76
- package/node_modules/music-metadata/node_modules/strtok3/lib/AbstractTokenizer.js +0 -111
- package/node_modules/music-metadata/node_modules/strtok3/lib/BlobTokenizer.d.ts +0 -29
- package/node_modules/music-metadata/node_modules/strtok3/lib/BlobTokenizer.js +0 -53
- package/node_modules/music-metadata/node_modules/strtok3/lib/BufferTokenizer.d.ts +0 -29
- package/node_modules/music-metadata/node_modules/strtok3/lib/BufferTokenizer.js +0 -52
- package/node_modules/music-metadata/node_modules/strtok3/lib/FileTokenizer.d.ts +0 -37
- package/node_modules/music-metadata/node_modules/strtok3/lib/FileTokenizer.js +0 -61
- package/node_modules/music-metadata/node_modules/strtok3/lib/ReadStreamTokenizer.d.ts +0 -34
- package/node_modules/music-metadata/node_modules/strtok3/lib/ReadStreamTokenizer.js +0 -107
- package/node_modules/music-metadata/node_modules/strtok3/lib/core.d.ts +0 -40
- package/node_modules/music-metadata/node_modules/strtok3/lib/core.js +0 -62
- package/node_modules/music-metadata/node_modules/strtok3/lib/index.d.ts +0 -16
- package/node_modules/music-metadata/node_modules/strtok3/lib/index.js +0 -22
- package/node_modules/music-metadata/node_modules/strtok3/lib/stream/AbstractStreamReader.d.ts +0 -54
- package/node_modules/music-metadata/node_modules/strtok3/lib/stream/AbstractStreamReader.js +0 -71
- package/node_modules/music-metadata/node_modules/strtok3/lib/stream/Deferred.d.ts +0 -6
- package/node_modules/music-metadata/node_modules/strtok3/lib/stream/Deferred.js +0 -10
- package/node_modules/music-metadata/node_modules/strtok3/lib/stream/Errors.d.ts +0 -10
- package/node_modules/music-metadata/node_modules/strtok3/lib/stream/Errors.js +0 -16
- package/node_modules/music-metadata/node_modules/strtok3/lib/stream/StreamReader.d.ts +0 -29
- package/node_modules/music-metadata/node_modules/strtok3/lib/stream/StreamReader.js +0 -83
- package/node_modules/music-metadata/node_modules/strtok3/lib/stream/WebStreamByobReader.d.ts +0 -14
- package/node_modules/music-metadata/node_modules/strtok3/lib/stream/WebStreamByobReader.js +0 -27
- package/node_modules/music-metadata/node_modules/strtok3/lib/stream/WebStreamDefaultReader.d.ts +0 -19
- package/node_modules/music-metadata/node_modules/strtok3/lib/stream/WebStreamDefaultReader.js +0 -62
- package/node_modules/music-metadata/node_modules/strtok3/lib/stream/WebStreamReader.d.ts +0 -14
- package/node_modules/music-metadata/node_modules/strtok3/lib/stream/WebStreamReader.js +0 -13
- package/node_modules/music-metadata/node_modules/strtok3/lib/stream/WebStreamReaderFactory.d.ts +0 -5
- package/node_modules/music-metadata/node_modules/strtok3/lib/stream/WebStreamReaderFactory.js +0 -19
- package/node_modules/music-metadata/node_modules/strtok3/lib/stream/index.d.ts +0 -6
- package/node_modules/music-metadata/node_modules/strtok3/lib/stream/index.js +0 -5
- package/node_modules/music-metadata/node_modules/strtok3/lib/types.d.ts +0 -139
- package/node_modules/music-metadata/node_modules/strtok3/lib/types.js +0 -1
- package/node_modules/music-metadata/node_modules/strtok3/package.json +0 -94
- package/node_modules/music-metadata/node_modules/token-types/LICENSE.txt +0 -9
- package/node_modules/music-metadata/node_modules/token-types/README.md +0 -120
- package/node_modules/music-metadata/node_modules/token-types/lib/index.d.ts +0 -135
- package/node_modules/music-metadata/node_modules/token-types/lib/index.js +0 -401
- package/node_modules/music-metadata/node_modules/token-types/package.json +0 -81
- package/node_modules/sprintf-js/.npmignore +0 -1
- package/node_modules/sprintf-js/LICENSE +0 -24
- package/node_modules/sprintf-js/README.md +0 -88
- package/node_modules/sprintf-js/bower.json +0 -14
- package/node_modules/sprintf-js/demo/angular.html +0 -20
- package/node_modules/sprintf-js/dist/angular-sprintf.min.js +0 -4
- package/node_modules/sprintf-js/dist/angular-sprintf.min.js.map +0 -1
- package/node_modules/sprintf-js/dist/angular-sprintf.min.map +0 -1
- package/node_modules/sprintf-js/dist/sprintf.min.js +0 -4
- package/node_modules/sprintf-js/dist/sprintf.min.js.map +0 -1
- package/node_modules/sprintf-js/dist/sprintf.min.map +0 -1
- package/node_modules/sprintf-js/gruntfile.js +0 -36
- package/node_modules/sprintf-js/package.json +0 -22
- package/node_modules/sprintf-js/src/angular-sprintf.js +0 -18
- package/node_modules/sprintf-js/src/sprintf.js +0 -208
- package/node_modules/sprintf-js/test/test.js +0 -82
- package/node_modules/uint8array-extras/index.d.ts +0 -331
- package/node_modules/uint8array-extras/index.js +0 -318
- package/node_modules/uint8array-extras/license +0 -9
- package/node_modules/uint8array-extras/package.json +0 -54
- package/node_modules/uint8array-extras/readme.md +0 -318
- package/node_modules/win-guid/LICENSE.txt +0 -9
- package/node_modules/win-guid/README.md +0 -113
- package/node_modules/win-guid/lib/guid.d.ts +0 -20
- package/node_modules/win-guid/lib/guid.js +0 -107
- package/node_modules/win-guid/package.json +0 -55
- /package/node_modules/{argparse → mammoth/node_modules/argparse}/LICENSE +0 -0
- /package/node_modules/{argparse → mammoth/node_modules/argparse}/README.md +0 -0
- /package/node_modules/{argparse → mammoth/node_modules/argparse}/index.js +0 -0
- /package/node_modules/{argparse → mammoth/node_modules/argparse}/lib/action/append/constant.js +0 -0
- /package/node_modules/{argparse → mammoth/node_modules/argparse}/lib/action/append.js +0 -0
- /package/node_modules/{argparse → mammoth/node_modules/argparse}/lib/action/count.js +0 -0
- /package/node_modules/{argparse → mammoth/node_modules/argparse}/lib/action/help.js +0 -0
- /package/node_modules/{argparse → mammoth/node_modules/argparse}/lib/action/store/constant.js +0 -0
- /package/node_modules/{argparse → mammoth/node_modules/argparse}/lib/action/store/false.js +0 -0
- /package/node_modules/{argparse → mammoth/node_modules/argparse}/lib/action/store/true.js +0 -0
- /package/node_modules/{argparse → mammoth/node_modules/argparse}/lib/action/store.js +0 -0
- /package/node_modules/{argparse → mammoth/node_modules/argparse}/lib/action/subparsers.js +0 -0
- /package/node_modules/{argparse → mammoth/node_modules/argparse}/lib/action/version.js +0 -0
- /package/node_modules/{argparse → mammoth/node_modules/argparse}/lib/action.js +0 -0
- /package/node_modules/{argparse → mammoth/node_modules/argparse}/lib/action_container.js +0 -0
- /package/node_modules/{argparse → mammoth/node_modules/argparse}/lib/argparse.js +0 -0
- /package/node_modules/{argparse → mammoth/node_modules/argparse}/lib/argument/error.js +0 -0
- /package/node_modules/{argparse → mammoth/node_modules/argparse}/lib/argument/exclusive.js +0 -0
- /package/node_modules/{argparse → mammoth/node_modules/argparse}/lib/argument/group.js +0 -0
- /package/node_modules/{argparse → mammoth/node_modules/argparse}/lib/argument_parser.js +0 -0
- /package/node_modules/{argparse → mammoth/node_modules/argparse}/lib/const.js +0 -0
- /package/node_modules/{argparse → mammoth/node_modules/argparse}/lib/help/added_formatters.js +0 -0
- /package/node_modules/{argparse → mammoth/node_modules/argparse}/lib/help/formatter.js +0 -0
- /package/node_modules/{argparse → mammoth/node_modules/argparse}/lib/namespace.js +0 -0
- /package/node_modules/{argparse → mammoth/node_modules/argparse}/lib/utils.js +0 -0
- /package/node_modules/{argparse → mammoth/node_modules/argparse}/package.json +0 -0
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
// lib/id3v2/FrameHeader.ts
|
|
2
|
-
import * as Token from 'token-types';
|
|
3
|
-
import * as util from '../common/Util.js';
|
|
4
|
-
import { UINT32SYNCSAFE } from './ID3v2Token.js';
|
|
5
|
-
import { textDecode } from '@borewit/text-codec';
|
|
6
|
-
import { Id3v2ContentError } from './FrameParser.js';
|
|
7
|
-
/**
|
|
8
|
-
* Frame header length (bytes) depending on ID3v2 major version.
|
|
9
|
-
*/
|
|
10
|
-
export function getFrameHeaderLength(majorVer) {
|
|
11
|
-
switch (majorVer) {
|
|
12
|
-
case 2: return 6;
|
|
13
|
-
case 3:
|
|
14
|
-
case 4: return 10;
|
|
15
|
-
default: throw makeUnexpectedMajorVersionError(majorVer);
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
function readFrameFlags(b) {
|
|
19
|
-
return {
|
|
20
|
-
status: {
|
|
21
|
-
tag_alter_preservation: util.getBit(b, 0, 6),
|
|
22
|
-
file_alter_preservation: util.getBit(b, 0, 5),
|
|
23
|
-
read_only: util.getBit(b, 0, 4)
|
|
24
|
-
},
|
|
25
|
-
format: {
|
|
26
|
-
grouping_identity: util.getBit(b, 1, 7),
|
|
27
|
-
compression: util.getBit(b, 1, 3),
|
|
28
|
-
encryption: util.getBit(b, 1, 2),
|
|
29
|
-
unsynchronisation: util.getBit(b, 1, 1),
|
|
30
|
-
data_length_indicator: util.getBit(b, 1, 0)
|
|
31
|
-
}
|
|
32
|
-
};
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* Factory: parse a frame header from its header bytes (6 for v2.2, 10 for v2.3/v2.4).
|
|
36
|
-
*
|
|
37
|
-
* Note: It only *parses* and does light validation. It does not read payload bytes.
|
|
38
|
-
*/
|
|
39
|
-
export function readFrameHeader(uint8Array, majorVer, warningCollector) {
|
|
40
|
-
switch (majorVer) {
|
|
41
|
-
case 2:
|
|
42
|
-
return parseFrameHeaderV22(uint8Array, majorVer, warningCollector);
|
|
43
|
-
case 3:
|
|
44
|
-
case 4:
|
|
45
|
-
return parseFrameHeaderV23V24(uint8Array, majorVer, warningCollector);
|
|
46
|
-
default:
|
|
47
|
-
throw makeUnexpectedMajorVersionError(majorVer);
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
function parseFrameHeaderV22(uint8Array, majorVer, warningCollector) {
|
|
51
|
-
const header = {
|
|
52
|
-
id: textDecode(uint8Array.subarray(0, 3), 'ascii'),
|
|
53
|
-
length: Token.UINT24_BE.get(uint8Array, 3)
|
|
54
|
-
};
|
|
55
|
-
if (!header.id.match(/^[A-Z0-9]{3}$/)) {
|
|
56
|
-
warningCollector.addWarning(`Invalid ID3v2.${majorVer} frame-header-ID: ${header.id}`);
|
|
57
|
-
}
|
|
58
|
-
return header;
|
|
59
|
-
}
|
|
60
|
-
function parseFrameHeaderV23V24(uint8Array, majorVer, warningCollector) {
|
|
61
|
-
const header = {
|
|
62
|
-
id: textDecode(uint8Array.subarray(0, 4), 'ascii'),
|
|
63
|
-
length: (majorVer === 4 ? UINT32SYNCSAFE : Token.UINT32_BE).get(uint8Array, 4),
|
|
64
|
-
flags: readFrameFlags(uint8Array.subarray(8, 10))
|
|
65
|
-
};
|
|
66
|
-
if (!header.id.match(/^[A-Z0-9]{4}$/)) {
|
|
67
|
-
warningCollector.addWarning(`Invalid ID3v2.${majorVer} frame-header-ID: ${header.id}`);
|
|
68
|
-
}
|
|
69
|
-
return header;
|
|
70
|
-
}
|
|
71
|
-
function makeUnexpectedMajorVersionError(majorVer) {
|
|
72
|
-
throw new Id3v2ContentError(`Unexpected majorVer: ${majorVer}`);
|
|
73
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { IGetToken } from 'strtok3';
|
|
2
|
-
export interface IChapterInfo {
|
|
3
|
-
startTime: number;
|
|
4
|
-
endTime: number;
|
|
5
|
-
startOffset?: number;
|
|
6
|
-
endOffset?: number;
|
|
7
|
-
}
|
|
8
|
-
/**
|
|
9
|
-
* Data portion of `CHAP` sub frame
|
|
10
|
-
*/
|
|
11
|
-
export declare const ChapterInfo: IGetToken<IChapterInfo>;
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import * as Token from 'token-types';
|
|
2
|
-
/**
|
|
3
|
-
* Data portion of `CHAP` sub frame
|
|
4
|
-
*/
|
|
5
|
-
export const ChapterInfo = {
|
|
6
|
-
len: 16,
|
|
7
|
-
get: (buf, off) => {
|
|
8
|
-
const startOffset = Token.UINT32_BE.get(buf, off + 8);
|
|
9
|
-
const endOffset = Token.UINT32_BE.get(buf, off + 12);
|
|
10
|
-
return {
|
|
11
|
-
startTime: Token.UINT32_BE.get(buf, off),
|
|
12
|
-
endTime: Token.UINT32_BE.get(buf, off + 4),
|
|
13
|
-
startOffset: startOffset === 0xFFFFFFFF ? undefined : startOffset,
|
|
14
|
-
endOffset: endOffset === 0xFFFFFFFF ? undefined : endOffset,
|
|
15
|
-
};
|
|
16
|
-
}
|
|
17
|
-
};
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { type ILyricsTag } from '../type.js';
|
|
2
|
-
export declare function parseLyrics(input: string): ILyricsTag;
|
|
3
|
-
export declare function toUnsyncedLyrics(lyrics: string): ILyricsTag;
|
|
4
|
-
/**
|
|
5
|
-
* Parse LRC (Lyrics) formatted text
|
|
6
|
-
* Ref: https://en.wikipedia.org/wiki/LRC_(file_format)
|
|
7
|
-
* @param lrcString
|
|
8
|
-
*/
|
|
9
|
-
export declare function parseLrc(lrcString: string): ILyricsTag;
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import { LyricsContentType, TimestampFormat } from '../type.js';
|
|
2
|
-
// Shared timestamp regex for LRC format
|
|
3
|
-
const TIMESTAMP_REGEX = /\[(\d{2}):(\d{2})\.(\d{2,3})]/;
|
|
4
|
-
export function parseLyrics(input) {
|
|
5
|
-
if (TIMESTAMP_REGEX.test(input)) {
|
|
6
|
-
return parseLrc(input);
|
|
7
|
-
}
|
|
8
|
-
return toUnsyncedLyrics(input);
|
|
9
|
-
}
|
|
10
|
-
export function toUnsyncedLyrics(lyrics) {
|
|
11
|
-
return {
|
|
12
|
-
contentType: LyricsContentType.lyrics,
|
|
13
|
-
timeStampFormat: TimestampFormat.notSynchronized,
|
|
14
|
-
text: lyrics.trim(),
|
|
15
|
-
syncText: [],
|
|
16
|
-
};
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* Parse LRC (Lyrics) formatted text
|
|
20
|
-
* Ref: https://en.wikipedia.org/wiki/LRC_(file_format)
|
|
21
|
-
* @param lrcString
|
|
22
|
-
*/
|
|
23
|
-
export function parseLrc(lrcString) {
|
|
24
|
-
const lines = lrcString.split('\n');
|
|
25
|
-
const syncText = [];
|
|
26
|
-
for (const line of lines) {
|
|
27
|
-
const match = line.match(TIMESTAMP_REGEX);
|
|
28
|
-
if (match) {
|
|
29
|
-
const minutes = Number.parseInt(match[1], 10);
|
|
30
|
-
const seconds = Number.parseInt(match[2], 10);
|
|
31
|
-
const ms = match[3].length === 3
|
|
32
|
-
? Number.parseInt(match[3], 10)
|
|
33
|
-
: Number.parseInt(match[3], 10) * 10;
|
|
34
|
-
const timestamp = (minutes * 60 + seconds) * 1000 + ms;
|
|
35
|
-
const text = line.replace(TIMESTAMP_REGEX, '').trim();
|
|
36
|
-
syncText.push({ timestamp, text });
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
return {
|
|
40
|
-
contentType: LyricsContentType.lyrics,
|
|
41
|
-
timeStampFormat: TimestampFormat.milliseconds,
|
|
42
|
-
text: syncText.map(line => line.text).join('\n'),
|
|
43
|
-
syncText,
|
|
44
|
-
};
|
|
45
|
-
}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export const matroskaParserLoader = {
|
|
2
|
-
parserType: 'matroska',
|
|
3
|
-
extensions: ['.mka', '.mkv', '.mk3d', '.mks', 'webm'],
|
|
4
|
-
mimeTypes: ['audio/matroska', 'video/matroska', 'audio/webm', 'video/webm'],
|
|
5
|
-
async load() {
|
|
6
|
-
return (await import('./MatroskaParser.js')).MatroskaParser;
|
|
7
|
-
}
|
|
8
|
-
};
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export const mp4ParserLoader = {
|
|
2
|
-
parserType: 'mp4',
|
|
3
|
-
extensions: ['.mp4', '.m4a', '.m4b', '.m4pa', 'm4v', 'm4r', '3gp', '.mov', '.movie', '.qt'],
|
|
4
|
-
mimeTypes: ['audio/mp4', 'audio/m4a', 'video/m4v', 'video/mp4', 'video/quicktime'],
|
|
5
|
-
async load() {
|
|
6
|
-
return (await import('./MP4Parser.js')).MP4Parser;
|
|
7
|
-
}
|
|
8
|
-
};
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
declare const MusepackContentError_base: {
|
|
2
|
-
new (message: string): {
|
|
3
|
-
readonly fileType: string;
|
|
4
|
-
toString(): string;
|
|
5
|
-
name: "UnexpectedFileContentError";
|
|
6
|
-
message: string;
|
|
7
|
-
stack?: string;
|
|
8
|
-
};
|
|
9
|
-
captureStackTrace(targetObject: object, constructorOpt?: Function): void;
|
|
10
|
-
prepareStackTrace(err: Error, stackTraces: NodeJS.CallSite[]): any;
|
|
11
|
-
stackTraceLimit: number;
|
|
12
|
-
};
|
|
13
|
-
export declare class MusepackContentError extends MusepackContentError_base {
|
|
14
|
-
}
|
|
15
|
-
export {};
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import initDebug from 'debug';
|
|
2
|
-
import * as Token from 'token-types';
|
|
3
|
-
import { AbstractID3Parser } from '../id3v2/AbstractID3Parser.js';
|
|
4
|
-
import { MpcSv8Parser } from './sv8/MpcSv8Parser.js';
|
|
5
|
-
import { MpcSv7Parser } from './sv7/MpcSv7Parser.js';
|
|
6
|
-
import { MusepackContentError } from './MusepackConentError.js';
|
|
7
|
-
const debug = initDebug('music-metadata:parser:musepack');
|
|
8
|
-
export class MusepackParser extends AbstractID3Parser {
|
|
9
|
-
async postId3v2Parse() {
|
|
10
|
-
const signature = await this.tokenizer.peekToken(new Token.StringType(3, 'latin1'));
|
|
11
|
-
let mpcParser;
|
|
12
|
-
switch (signature) {
|
|
13
|
-
case 'MP+': {
|
|
14
|
-
debug('Stream-version 7');
|
|
15
|
-
mpcParser = new MpcSv7Parser(this.metadata, this.tokenizer, this.options);
|
|
16
|
-
break;
|
|
17
|
-
}
|
|
18
|
-
case 'MPC': {
|
|
19
|
-
debug('Stream-version 8');
|
|
20
|
-
mpcParser = new MpcSv8Parser(this.metadata, this.tokenizer, this.options);
|
|
21
|
-
break;
|
|
22
|
-
}
|
|
23
|
-
default: {
|
|
24
|
-
throw new MusepackContentError('Invalid signature prefix');
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
this.metadata.setAudioOnly();
|
|
28
|
-
return mpcParser.parse();
|
|
29
|
-
}
|
|
30
|
-
}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export const oggParserLoader = {
|
|
2
|
-
parserType: 'ogg',
|
|
3
|
-
extensions: ['.ogg', '.ogv', '.oga', '.ogm', '.ogx', '.opus', '.spx'],
|
|
4
|
-
mimeTypes: ['audio/ogg', 'audio/opus', 'audio/speex', 'video/ogg'], // RFC 7845, RFC 6716, RFC 5574
|
|
5
|
-
async load() {
|
|
6
|
-
return (await import('./OggParser.js')).OggParser;
|
|
7
|
-
}
|
|
8
|
-
};
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import * as Token from 'token-types';
|
|
2
|
-
import * as util from '../common/Util.js';
|
|
3
|
-
import { StringType } from 'token-types';
|
|
4
|
-
export const PageHeader = {
|
|
5
|
-
len: 27,
|
|
6
|
-
get: (buf, off) => {
|
|
7
|
-
return {
|
|
8
|
-
capturePattern: new StringType(4, 'latin1').get(buf, off),
|
|
9
|
-
version: Token.UINT8.get(buf, off + 4),
|
|
10
|
-
headerType: {
|
|
11
|
-
continued: util.getBit(buf, off + 5, 0),
|
|
12
|
-
firstPage: util.getBit(buf, off + 5, 1),
|
|
13
|
-
lastPage: util.getBit(buf, off + 5, 2)
|
|
14
|
-
},
|
|
15
|
-
// packet_flag: Token.UINT8.get(buf, off + 5),
|
|
16
|
-
absoluteGranulePosition: Number(Token.UINT64_LE.get(buf, off + 6)),
|
|
17
|
-
streamSerialNumber: Token.UINT32_LE.get(buf, off + 14),
|
|
18
|
-
pageSequenceNo: Token.UINT32_LE.get(buf, off + 18),
|
|
19
|
-
pageChecksum: Token.UINT32_LE.get(buf, off + 22),
|
|
20
|
-
page_segments: Token.UINT8.get(buf, off + 26)
|
|
21
|
-
};
|
|
22
|
-
}
|
|
23
|
-
};
|
|
24
|
-
export class SegmentTable {
|
|
25
|
-
static sum(buf, off, len) {
|
|
26
|
-
const dv = new DataView(buf.buffer, 0);
|
|
27
|
-
let s = 0;
|
|
28
|
-
for (let i = off; i < off + len; ++i) {
|
|
29
|
-
s += dv.getUint8(i);
|
|
30
|
-
}
|
|
31
|
-
return s;
|
|
32
|
-
}
|
|
33
|
-
constructor(header) {
|
|
34
|
-
this.len = header.page_segments;
|
|
35
|
-
}
|
|
36
|
-
get(buf, off) {
|
|
37
|
-
return {
|
|
38
|
-
totalPageSize: SegmentTable.sum(buf, off, this.len)
|
|
39
|
-
};
|
|
40
|
-
}
|
|
41
|
-
}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import type { ITokenizer } from 'strtok3';
|
|
2
|
-
import type * as Ogg from '../OggToken.js';
|
|
3
|
-
import type { IOptions } from '../../type.js';
|
|
4
|
-
import type { INativeMetadataCollector } from '../../common/MetadataCollector.js';
|
|
5
|
-
/**
|
|
6
|
-
* Ref:
|
|
7
|
-
* - https://xiph.org/flac/ogg_mapping.html
|
|
8
|
-
*/
|
|
9
|
-
export declare class FlacStream implements Ogg.IPageConsumer {
|
|
10
|
-
private metadata;
|
|
11
|
-
private options;
|
|
12
|
-
private tokenizer;
|
|
13
|
-
private flacParser;
|
|
14
|
-
durationOnLastPage: boolean;
|
|
15
|
-
constructor(metadata: INativeMetadataCollector, options: IOptions, tokenizer: ITokenizer);
|
|
16
|
-
/**
|
|
17
|
-
* Vorbis 1 parser
|
|
18
|
-
* @param header Ogg Page Header
|
|
19
|
-
* @param pageData Page data
|
|
20
|
-
*/
|
|
21
|
-
parsePage(header: Ogg.IPageHeader, pageData: Uint8Array): Promise<void>;
|
|
22
|
-
calculateDuration(): void;
|
|
23
|
-
/**
|
|
24
|
-
* Parse first Theora Ogg page. the initial identification header packet
|
|
25
|
-
*/
|
|
26
|
-
protected parseFirstPage(_header: Ogg.IPageHeader, pageData: Uint8Array): Promise<void>;
|
|
27
|
-
private parseDataBlock;
|
|
28
|
-
flush(): Promise<void>;
|
|
29
|
-
}
|
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
import initDebug from 'debug';
|
|
2
|
-
import * as Flac from '../../flac/FlacToken.js';
|
|
3
|
-
import { FlacParser } from '../../flac/FlacParser.js';
|
|
4
|
-
import { FourCcToken } from '../../common/FourCC.js';
|
|
5
|
-
import { VorbisPictureToken } from '../vorbis/Vorbis.js';
|
|
6
|
-
const debug = initDebug('music-metadata:parser:ogg:theora');
|
|
7
|
-
/**
|
|
8
|
-
* Ref:
|
|
9
|
-
* - https://xiph.org/flac/ogg_mapping.html
|
|
10
|
-
*/
|
|
11
|
-
export class FlacStream {
|
|
12
|
-
constructor(metadata, options, tokenizer) {
|
|
13
|
-
this.durationOnLastPage = false;
|
|
14
|
-
this.metadata = metadata;
|
|
15
|
-
this.options = options;
|
|
16
|
-
this.tokenizer = tokenizer;
|
|
17
|
-
this.flacParser = new FlacParser(this.metadata, this.tokenizer, options);
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Vorbis 1 parser
|
|
21
|
-
* @param header Ogg Page Header
|
|
22
|
-
* @param pageData Page data
|
|
23
|
-
*/
|
|
24
|
-
async parsePage(header, pageData) {
|
|
25
|
-
if (header.headerType.firstPage) {
|
|
26
|
-
await this.parseFirstPage(header, pageData);
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
calculateDuration() {
|
|
30
|
-
debug('duration calculation not implemented');
|
|
31
|
-
}
|
|
32
|
-
/**
|
|
33
|
-
* Parse first Theora Ogg page. the initial identification header packet
|
|
34
|
-
*/
|
|
35
|
-
async parseFirstPage(_header, pageData) {
|
|
36
|
-
debug('First Ogg/FLAC page');
|
|
37
|
-
const fourCC = await FourCcToken.get(pageData, 9);
|
|
38
|
-
if (fourCC.toString() !== 'fLaC') {
|
|
39
|
-
throw new Error('Invalid FLAC preamble');
|
|
40
|
-
}
|
|
41
|
-
const blockHeader = await Flac.BlockHeader.get(pageData, 13);
|
|
42
|
-
await this.parseDataBlock(blockHeader, pageData.subarray(13 + Flac.BlockHeader.len));
|
|
43
|
-
}
|
|
44
|
-
async parseDataBlock(blockHeader, pageData) {
|
|
45
|
-
debug(`blockHeader type=${blockHeader.type}, length=${blockHeader.length}`);
|
|
46
|
-
switch (blockHeader.type) {
|
|
47
|
-
case Flac.BlockType.STREAMINFO: {
|
|
48
|
-
const streamInfo = Flac.BlockStreamInfo.get(pageData, 0);
|
|
49
|
-
return this.flacParser.processsStreamInfo(streamInfo);
|
|
50
|
-
}
|
|
51
|
-
case Flac.BlockType.PADDING:
|
|
52
|
-
break;
|
|
53
|
-
case Flac.BlockType.APPLICATION:
|
|
54
|
-
break;
|
|
55
|
-
case Flac.BlockType.SEEKTABLE:
|
|
56
|
-
break;
|
|
57
|
-
case Flac.BlockType.VORBIS_COMMENT:
|
|
58
|
-
return this.flacParser.parseComment(pageData);
|
|
59
|
-
case Flac.BlockType.PICTURE:
|
|
60
|
-
if (!this.options.skipCovers) {
|
|
61
|
-
const picture = new VorbisPictureToken(pageData.length).get(pageData, 0);
|
|
62
|
-
return this.flacParser.addPictureTag(picture);
|
|
63
|
-
}
|
|
64
|
-
break;
|
|
65
|
-
default:
|
|
66
|
-
this.metadata.addWarning(`Unknown block type: ${blockHeader.type}`);
|
|
67
|
-
}
|
|
68
|
-
// Ignore data block
|
|
69
|
-
return this.tokenizer.ignore(blockHeader.length).then();
|
|
70
|
-
}
|
|
71
|
-
flush() {
|
|
72
|
-
return Promise.resolve();
|
|
73
|
-
}
|
|
74
|
-
}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import type { ITokenizer } from 'strtok3';
|
|
2
|
-
import type { IPageHeader } from '../OggToken.js';
|
|
3
|
-
import { VorbisStream } from '../vorbis/VorbisStream.js';
|
|
4
|
-
import type { IOptions } from '../../type.js';
|
|
5
|
-
import type { INativeMetadataCollector } from '../../common/MetadataCollector.js';
|
|
6
|
-
/**
|
|
7
|
-
* Opus parser
|
|
8
|
-
* Internet Engineering Task Force (IETF) - RFC 6716
|
|
9
|
-
* Used by OggStream
|
|
10
|
-
*/
|
|
11
|
-
export declare class OpusStream extends VorbisStream {
|
|
12
|
-
private idHeader;
|
|
13
|
-
private lastPos;
|
|
14
|
-
private tokenizer;
|
|
15
|
-
constructor(metadata: INativeMetadataCollector, options: IOptions, tokenizer: ITokenizer);
|
|
16
|
-
/**
|
|
17
|
-
* Parse first Opus Ogg page
|
|
18
|
-
* @param {IPageHeader} header
|
|
19
|
-
* @param {Uint8Array} pageData
|
|
20
|
-
*/
|
|
21
|
-
protected parseFirstPage(_header: IPageHeader, pageData: Uint8Array): void;
|
|
22
|
-
protected parseFullPage(pageData: Uint8Array): Promise<void>;
|
|
23
|
-
calculateDuration(enfOfStream: boolean): void;
|
|
24
|
-
}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import type { ITokenizer } from 'strtok3';
|
|
2
|
-
import type { IPageHeader } from '../OggToken.js';
|
|
3
|
-
import { VorbisStream } from '../vorbis/VorbisStream.js';
|
|
4
|
-
import type { IOptions } from '../../type.js';
|
|
5
|
-
import type { INativeMetadataCollector } from '../../common/MetadataCollector.js';
|
|
6
|
-
/**
|
|
7
|
-
* Speex, RFC 5574
|
|
8
|
-
* Ref:
|
|
9
|
-
* - https://www.speex.org/docs/manual/speex-manual/
|
|
10
|
-
* - https://tools.ietf.org/html/rfc5574
|
|
11
|
-
*/
|
|
12
|
-
export declare class SpeexStream extends VorbisStream {
|
|
13
|
-
constructor(metadata: INativeMetadataCollector, options: IOptions, _tokenizer: ITokenizer);
|
|
14
|
-
/**
|
|
15
|
-
* Parse first Speex Ogg page
|
|
16
|
-
* @param {IPageHeader} header
|
|
17
|
-
* @param {Uint8Array} pageData
|
|
18
|
-
*/
|
|
19
|
-
protected parseFirstPage(_header: IPageHeader, pageData: Uint8Array): void;
|
|
20
|
-
}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import type { ITokenizer } from 'strtok3';
|
|
2
|
-
import type * as Ogg from '../OggToken.js';
|
|
3
|
-
import type { IOptions } from '../../type.js';
|
|
4
|
-
import type { INativeMetadataCollector } from '../../common/MetadataCollector.js';
|
|
5
|
-
/**
|
|
6
|
-
* Ref:
|
|
7
|
-
* - https://theora.org/doc/Theora.pdf
|
|
8
|
-
*/
|
|
9
|
-
export declare class TheoraStream implements Ogg.IPageConsumer {
|
|
10
|
-
private metadata;
|
|
11
|
-
durationOnLastPage: boolean;
|
|
12
|
-
constructor(metadata: INativeMetadataCollector, _options: IOptions, _tokenizer: ITokenizer);
|
|
13
|
-
/**
|
|
14
|
-
* Vorbis 1 parser
|
|
15
|
-
* @param header Ogg Page Header
|
|
16
|
-
* @param pageData Page data
|
|
17
|
-
*/
|
|
18
|
-
parsePage(header: Ogg.IPageHeader, pageData: Uint8Array): Promise<void>;
|
|
19
|
-
calculateDuration(): void;
|
|
20
|
-
/**
|
|
21
|
-
* Parse first Theora Ogg page. the initial identification header packet
|
|
22
|
-
*/
|
|
23
|
-
protected parseFirstPage(_header: Ogg.IPageHeader, pageData: Uint8Array): Promise<void>;
|
|
24
|
-
flush(): Promise<void>;
|
|
25
|
-
}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import initDebug from 'debug';
|
|
2
|
-
import { IdentificationHeader } from './Theora.js';
|
|
3
|
-
const debug = initDebug('music-metadata:parser:ogg:theora');
|
|
4
|
-
/**
|
|
5
|
-
* Ref:
|
|
6
|
-
* - https://theora.org/doc/Theora.pdf
|
|
7
|
-
*/
|
|
8
|
-
export class TheoraStream {
|
|
9
|
-
constructor(metadata, _options, _tokenizer) {
|
|
10
|
-
this.durationOnLastPage = false;
|
|
11
|
-
this.metadata = metadata;
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* Vorbis 1 parser
|
|
15
|
-
* @param header Ogg Page Header
|
|
16
|
-
* @param pageData Page data
|
|
17
|
-
*/
|
|
18
|
-
async parsePage(header, pageData) {
|
|
19
|
-
if (header.headerType.firstPage) {
|
|
20
|
-
await this.parseFirstPage(header, pageData);
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
calculateDuration() {
|
|
24
|
-
debug('duration calculation not implemented');
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Parse first Theora Ogg page. the initial identification header packet
|
|
28
|
-
*/
|
|
29
|
-
async parseFirstPage(_header, pageData) {
|
|
30
|
-
debug('First Ogg/Theora page');
|
|
31
|
-
this.metadata.setFormat('codec', 'Theora');
|
|
32
|
-
const idHeader = IdentificationHeader.get(pageData, 0);
|
|
33
|
-
this.metadata.setFormat('bitrate', idHeader.nombr);
|
|
34
|
-
this.metadata.setFormat('hasVideo', true);
|
|
35
|
-
}
|
|
36
|
-
flush() {
|
|
37
|
-
return Promise.resolve();
|
|
38
|
-
}
|
|
39
|
-
}
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import { type IVorbisPicture } from './Vorbis.js';
|
|
2
|
-
import type { IPageConsumer, IPageHeader } from '../OggToken.js';
|
|
3
|
-
import type { IOptions } from '../../type.js';
|
|
4
|
-
import type { INativeMetadataCollector } from '../../common/MetadataCollector.js';
|
|
5
|
-
declare const VorbisContentError_base: {
|
|
6
|
-
new (message: string): {
|
|
7
|
-
readonly fileType: string;
|
|
8
|
-
toString(): string;
|
|
9
|
-
name: "UnexpectedFileContentError";
|
|
10
|
-
message: string;
|
|
11
|
-
stack?: string;
|
|
12
|
-
};
|
|
13
|
-
captureStackTrace(targetObject: object, constructorOpt?: Function): void;
|
|
14
|
-
prepareStackTrace(err: Error, stackTraces: NodeJS.CallSite[]): any;
|
|
15
|
-
stackTraceLimit: number;
|
|
16
|
-
};
|
|
17
|
-
export declare class VorbisContentError extends VorbisContentError_base {
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Vorbis 1 Parser.
|
|
21
|
-
* Used by OggStream
|
|
22
|
-
*/
|
|
23
|
-
export declare class VorbisStream implements IPageConsumer {
|
|
24
|
-
private pageSegments;
|
|
25
|
-
protected metadata: INativeMetadataCollector;
|
|
26
|
-
protected options: IOptions;
|
|
27
|
-
protected lastPageHeader?: IPageHeader;
|
|
28
|
-
durationOnLastPage: boolean;
|
|
29
|
-
constructor(metadata: INativeMetadataCollector, options: IOptions);
|
|
30
|
-
/**
|
|
31
|
-
* Vorbis 1 parser
|
|
32
|
-
* @param header Ogg Page Header
|
|
33
|
-
* @param pageData Page data
|
|
34
|
-
*/
|
|
35
|
-
parsePage(header: IPageHeader, pageData: Uint8Array): Promise<void>;
|
|
36
|
-
private static mergeUint8Arrays;
|
|
37
|
-
flush(): Promise<void>;
|
|
38
|
-
parseUserComment(pageData: Uint8Array, offset: number): Promise<number>;
|
|
39
|
-
addTag(id: string, value: string | IVorbisPicture): Promise<void>;
|
|
40
|
-
calculateDuration(enfOfStream: boolean): void;
|
|
41
|
-
/**
|
|
42
|
-
* Parse first Ogg/Vorbis page
|
|
43
|
-
* @param _header
|
|
44
|
-
* @param pageData
|
|
45
|
-
*/
|
|
46
|
-
protected parseFirstPage(_header: IPageHeader, pageData: Uint8Array): void;
|
|
47
|
-
protected parseFullPage(pageData: Uint8Array): Promise<void>;
|
|
48
|
-
/**
|
|
49
|
-
* Ref: https://xiph.org/vorbis/doc/Vorbis_I_spec.html#x1-840005.2
|
|
50
|
-
*/
|
|
51
|
-
protected parseUserCommentList(pageData: Uint8Array, offset: number): Promise<void>;
|
|
52
|
-
}
|
|
53
|
-
export {};
|