Borewit / music-metadata

Stream and file based music metadata parser for node. Supporting a wide range of audio and tag formats.
MIT License
979 stars 93 forks source link

Add `option.mkvUseIndex` to use index to skip Matroska cluster elements #2219

Closed Borewit closed 3 months ago

Borewit commented 3 months ago

Change EBML iterator and Matroksa parser so that, that it processes the metadata found in elements during parsing, rather then when the entire file is parsed.

Adds flag options.mkvUseIndex, which is by default: false, if set to true, in Matroska based files, use the SeekHead element index to skip segment/cluster elements.. experimental functionality Can have a significant performance impact if enabled. Possible side effect can be that certain metadata maybe skipped, depending on the index. If there is no SeekHead element present in the Matroska file, this flag has no effect.

Related technical information: Matroska: Data Layout

Related to:

Resolves: #2135

coveralls commented 3 months ago

Coverage Status

coverage: 97.092% (+0.03%) from 97.061% when pulling 1b9a88cb61548ae6cfe3df3d047ad322a41e3124 on skip-matroska-cluster-elements-using-index into 1fe4049308fe237eb46c120548e0ead102df2847 on master.

Borewit commented 3 months ago

Part of v10.2.0