Commit graph

1696 commits

Author SHA1 Message Date
Serial
551163ce82 changelog: Update for latest MP4 changes 2024-09-14 17:05:53 -04:00
Serial
f87fa0a3f5 Ilst: Create Ilst::is_* methods for flag atoms 2024-09-14 17:05:53 -04:00
Serial
9eb35ae1b9 MP4: Create DataType enum, replacing constants 2024-09-14 17:05:53 -04:00
Serial
637052978b MP4: Move AdvisoryRating to a new module 2024-09-14 17:05:53 -04:00
Serial
0be82f7264 MP4: Add AtomReader::read_u24 2024-09-14 17:05:53 -04:00
Serial
b05bf2c6c6 changelog: Update for latest changes 2024-09-14 11:34:23 -04:00
Serial
b565b3e288 MP4: Support reading any size flag atom 2024-09-14 11:34:23 -04:00
Serial
06618cf1a7 ID3v2: Restrict frame skipping to the bounds of the frame content 2024-09-13 19:53:39 -04:00
Serial
79336cd304 ItemKey: Fix links 2024-09-09 08:01:39 -04:00
Serial
c629e0e4bd ID3v2: Handle TXXX ItemKey conversions correctly 2024-09-09 08:01:39 -04:00
Serial
da4dea1f8b ItemKey: Add ItemKey::TrackArtists
This is a multi-valued item where each entry contains one artist name.

See <https://picard-docs.musicbrainz.org/en/appendices/tag_mapping.html#artists>.
2024-09-09 08:01:39 -04:00
Serial
e787f81544 Timestamp: Support parsing without separators 2024-09-09 07:07:36 -04:00
Serial
a0298587c0 Add testing section to README 2024-09-01 19:26:30 -04:00
Serial
069b7bfc97 Tests: Switch to test_log
We have really good debug/trace logs now. Having them available for test failures is a huge help.
2024-09-01 19:26:30 -04:00
Serial
e54a0abd00 MPC: Fix potential divide by zero 2024-08-31 00:10:48 -04:00
Serial
c4ddd53822 Fuzz: Make all targets test = false
So that we aren't infinitely running them in CI.
2024-08-31 00:01:00 -04:00
Serial
675d235e29 Fuzz: Add lofty-fuzz to workspace
Now any future build failures will be caught by CI.
2024-08-31 00:01:00 -04:00
Serial
103387fa26 Fuzz: Make all targets build again
None of the fuzz targets have been touched in awhile, so they haven't been compiling for most of the year probably.
2024-08-31 00:01:00 -04:00
Serial
d69f1cc2f3
0.21.1 2024-08-28 22:50:07 -04:00
Serial
18d2c04023
fmt 2024-08-28 22:50:03 -04:00
Serial
03047bb345 FLAC: Stop moving padding blocks
`PADDING` blocks were incorrectly getting moved to the end of the header without the `Last-metadata-block` getting set.
2024-08-25 13:43:53 -04:00
Serial
0b903e9698 changelog: Add entries for fuzzing fixes 2024-08-24 12:49:14 -04:00
Serial
34238b5ec1 AAC: Fix overflow on tag size mismatches 2024-08-24 12:49:14 -04:00
Serial
9c967f6333 MPC: Fix overflow on tag size mismatches 2024-08-24 12:49:14 -04:00
Serial
4f9971a9fc Clippy 2024-08-24 12:32:18 -04:00
Serial
2f270e873a FLAC: Retain vendor strings on tag write 2024-08-24 12:32:18 -04:00
Serial
1505ddf69f
0.21.0 2024-07-29 07:44:52 -04:00
Serial
18c9ea0511
misc: Update dependencies 2024-07-29 07:38:21 -04:00
Serial
9ff01c18b4 changelog: Update for latest changes 2024-07-28 13:57:33 -04:00
Serial
51e9f5d8b9 MP4: Fix panic on large stts entry counts 2024-07-28 13:57:33 -04:00
Serial
dfb5601b7f alloc: Add fallible Vec::with_capacity 2024-07-28 13:57:33 -04:00
Serial
5661d18a2e MP4: Fix panic on improperly sized freeform idents 2024-07-23 16:07:43 -04:00
Serial
59560234b4 MP4: Fix panic on invalid hdlr atom size 2024-07-23 16:07:43 -04:00
Serial
15e893e268 MP4: Fix panic on invalid data atom size 2024-07-23 16:07:43 -04:00
Serial
3541fd73f3 WAV: Fix panic on invalid bits_per_sample 2024-07-23 16:07:43 -04:00
Serial
15c1aed9bf MP4: Allow invalid atom sizes with ParsingMode::Relaxed 2024-07-22 12:19:32 -04:00
Serial
9b4cf83f2a ID3v2.3: Fix some writing issues
* TDAT is DDMM, was previously written as MMDD
* TCON conversion will properly handle refinements
* TIPL and TMCL are now merged into IPLS
2024-07-16 15:17:20 -04:00
Serial
38002d18b1
ID3v2: Stop writing synchsafe integers for ID3v2.3 2024-07-15 13:14:17 -04:00
Serial
5a3a8ba8c6 Vorbis: Check comment counts before allocation 2024-07-14 15:10:36 -04:00
Serial
2a7c061e74 WAV: Fix panic on improperly sized INFO LISTs 2024-07-14 15:10:36 -04:00
Serial
dd9aa76a54 MP4: Fix panic with improperly sized freeform idents 2024-07-14 15:10:36 -04:00
Serial
e9ec05babf AIFF: Fix parsing of invalid f80 sample rates 2024-07-14 15:10:36 -04:00
Serial
37fdc657a3 MP4: Fix division by zero panic 2024-07-14 15:10:36 -04:00
Serial
61adb2a28f WAV: Fix multiply with overflow panic 2024-07-14 15:10:36 -04:00
Serial
60bd996e72 Vorbis: Fix multiply with overflow panic 2024-07-14 15:10:36 -04:00
Serial
1e8dbf4295 FLAC: Fix subtract with overflow panic 2024-07-14 15:10:36 -04:00
Serial
3d43b5882d
changelog: Update for recent changes 2024-07-04 12:30:16 -04:00
Uwe Klotz
4fc6b96f40 Add comments 2024-07-04 12:24:59 -04:00
Uwe Klotz
a523db78d1 Add Tag::take_filter() 2024-07-04 12:24:59 -04:00
Serial
fcb5446922 ID3v2: Ignore empty timestamp frames
I had a file with an empty timestamp frame that errored with `ParsingMode::BestAttempt`. Now that's only an error case with `ParsingMode::Strict`.
2024-07-04 12:17:30 -04:00