1
0
mirror of synced 2026-09-01 00:04:45 +00:00
Commit Graph

54 Commits

Author SHA1 Message Date
Borewit c619ac4a5a Replace text-coded with @exodus/bytes for text encoding and decoding 2026-02-21 16:13:00 +01:00
Borewit 952ceae807 Fix miscalculation Ogg/Vorbis, duration miscalculation
Fix miscalculation occurring when Ogg/Vorbis files when the duration option is not explicitly enabled. In that case, the parser performs a partial read of the file and reports the duration based only on the processed portion, resulting in an incomplete value.

Resolves #2518
2026-02-16 19:30:57 +01:00
Borewit 81dca61fee Fix small code smalls, update Biome to 2.3.11 2026-01-06 15:50:42 +01:00
Borewit 9f5f545136 Fix Ogg/Opus duration calculation.
Duration calculation requires to parse the entire Ogg/Opus file.
2025-11-15 19:24:15 +01:00
Borewit bcae011214 Favor subarray over slice, reusing instead of copying data 2025-09-15 20:28:29 +02:00
Borewit ff13f3e03c Map Vorbis.ENCODER and Vorbis VORBIS_COMMENT vendor to common.tool 2025-09-15 17:25:37 +02:00
Borewit 763f72854c Replace @kayahr/text-encoding with @borewit/text-codec 2025-08-13 21:48:37 +01:00
Borewit d3bfd7ae4e Use @kayahr/text-encoding for decoding
To avoid problems with unsupported character sets.
2025-08-12 20:39:42 +01:00
Borewit 2849deb89e CI: Improve structure Ogg unit tests
- Move an Ogg/Vorbis test to the correct description.
- Move some Ogg files, to the `ogg` subfolder
2025-07-20 13:32:23 +02:00
Borewit c2c9ad9a8d CI: Update to Biome 2.1.2 2025-07-20 10:09:15 +02:00
Borewit eb17a5ce65 Fix peek Ogg radio streams 2025-07-19 22:14:35 +02:00
Borewit 121078b757 Add support for Ogg/FLAC 2025-07-03 22:17:42 +02:00
Borewit 1824cc1394 Implement handling multiple Ogg sub streams 2025-07-01 12:34:25 +02:00
Borewit a9094e9829 Indicate on every media file if it contains an audio and/or video stream.
Introduces: `format.hasAudio` and `format.hasVideo`
2025-06-30 17:33:09 +02:00
Borewit f16f584b0b Fix code style issues 2025-06-26 20:24:05 +02:00
Borewit 5e93e8e1d8 Move supported MIME-types declaration to parser implementations 2025-04-10 18:24:45 +02:00
Justinas Delinda 7fc74efc5b simplify parser loader 2025-04-01 20:01:38 +02:00
Justinas Delinda 7ff2786318 Refactor constructors to use explicit property assignments 2025-04-01 19:57:20 +02:00
Justinas Delinda 9d2d2a7c69 Refactor enums to mapped objects 2025-04-01 19:57:20 +02:00
Borewit 4456defc99 Dynamic import parsers 2024-09-05 20:25:18 +02:00
Borewit 8fe9ac2057 Implement own custom Error using ADT style implementation 2024-08-29 17:48:28 +02:00
Borewit 3937085154 Enable TypeScript options strict & verbatimModuleSyntax 2024-08-12 08:54:43 +02:00
Borewit 89ff43a053 Migrate eslint to biome, fix lint errors 2024-08-08 19:15:49 +02:00
Borewit d6c275509d Remove remaining Buffer usages.
Add lint rule to prevent global Buffer usage.
2024-07-12 12:01:12 +02:00
Borewit 594e128ba5 Remove Node.js Buffer dependencies 2024-07-09 21:57:28 +02:00
Borewit 573c505a84 Prevent subpath imports, for Angular compatibility 2024-07-09 21:26:38 +02:00
Bjorn Stromberg eb0f8e61b8 feat: convert most Buffer usage to Uint8Array (#2103)
Convert most Buffer usage to Uint8Array and `uint8array-extras` to fill functionality gaps
* Update `token-types` to version 6.0.0
* Update `strtok3`  to version 7.1.0
* Update `file-type` to version 19.1.0
* Update dependency diagram to desired Node.js free via primary entry point

Co-authored-by: Borewit <Borewit@users.noreply.github.com>
2024-07-08 19:53:02 +02:00
Borewit 976dc49ecd Add support for Vorbis Comment RATING tag 2023-11-07 20:17:55 +01:00
certuna d6d8a9739c Update VorbisTagMapper.ts 2023-11-01 12:05:06 +01:00
Borewit 7cdebd1ca6 Migrate from CommonJS to ES Modules 2022-02-27 15:27:40 +01:00
Borewit 65ba6661fa Normalize import debug towards ES module compatibility 2022-02-27 13:28:45 +01:00
Borewit 19366b896c Fix lint code style issues
Parse TypeScript files recursive.
Fix duplicate interface declarations.
2022-01-29 19:02:24 +01:00
Borewit 5ae7f3817d Minor source code improvements 2021-12-10 17:50:09 +01:00
Borewit 973e90978c Use Uint8Array instead of Buffer where reasonable possible 2021-07-22 15:34:01 +02:00
Borewit fc2b54e113 Simplify utility (util) functions 2021-07-13 17:02:41 +02:00
Borewit ac47b0fb62 Convert static methods from Util to module functions
Normalize the util is imported.
2021-07-11 17:04:36 +02:00
Borewit d00ab31822 Add OggParser as text file. 2021-05-29 13:49:23 +02:00
Borewit 46e0d90239 Borewit/music-metadata#826 Escape special characters 2021-05-29 13:49:23 +02:00
Borewit abbaafd18c Get rid of assert dependency. 2021-01-10 21:10:25 +01:00
Borewit 94112e3c06 Remove unused files & move WaveParser to wav package 2020-12-30 15:17:35 +01:00
Borewit a6c90127d8 Reformat code. 2020-12-06 14:49:56 +01:00
Borewit 071dc469e1 Add alternative Vorbis comment album-artist mapping. 2020-12-06 14:49:56 +01:00
Borewit 770bbdf6a7 Fix Opus duration calculation (#612) 2020-09-08 20:59:00 +02:00
Borewit 5fe094e47a Be able to calculate duration of Ogg file without last page not marked as such. (#609)
Handle duration calculation of Ogg file lacking last-page flag.
2020-09-07 21:53:13 +02:00
Esther Gutiérrez 8439c802b1 Add key tag for vorbis 2020-05-08 12:34:33 +02:00
Borewit d9b4782572 Add Ogg logo 2020-01-04 21:26:42 +01:00
Borewit 9008262f77 Adapt to strtok3 v5: API changes: tokenizer.fileInfo 2019-12-30 11:05:55 +01:00
Borewit 9ba5abaf3c Update to EndOfStream error 2019-12-24 17:17:42 +01:00
Borewit 72d7a8cfed Update strtok3 & token-types 2019-12-23 19:37:10 +01:00
Borewit 574f998528 #266 Support METADATA_BLOCK_PICTURE in FLAC Vorbis tag, by using shared Vorbis decoder code 2019-09-24 19:09:06 +02:00