Serial
0b2d82b2c6
probe: Make module public, remove re-exports
2024-04-14 13:16:10 -04:00
Serial
eceb55044b
picture: Make module public, remove re-exports
2024-04-14 13:16:10 -04:00
Serial
cf778c1f58
tag: Remove global re-exports of tag items
2024-04-14 13:16:10 -04:00
Serial
464f459e99
misc: Remove root file
re-exports
2024-04-14 13:16:10 -04:00
Serial
65851a4f93
misc: Move {Parse,Write,Global}Options to new module
2024-04-14 13:16:10 -04:00
Serial
df0be9e53e
misc: Introduce prelude
2024-04-14 13:16:10 -04:00
Serial
586f4add11
WriteOptions: Use default()
instead of new()
2024-04-03 12:52:07 -04:00
Serial
f4611ca357
misc: Introduce WriteOptions
...
This allows the caller to tweak how Lofty writes their tags in various ways.
As this is just a dumping ground for all sorts of format-specific settings, this is best used as an application global config that gets set once.
In its current state, it will only respect `uppercase_id3v2_chunk` and `preferred_padding` (for some formats).
`respect_read_only` and `remove_others` are defined for later use.
closes #228
2024-04-03 12:52:07 -04:00
Serial
09a425e94c
ID3v2: Fix overflow with large RVA2 peak
...
closes #295
2024-04-03 12:45:42 -04:00
Serial
ec80ae828c
Tests/Benches: Fixup for new Picture::new_unchecked
signature
...
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2023-12-18 12:36:45 -05:00
Serial
a08a7c84c1
MP4: Skip over invalid ilst
atoms by default
...
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2023-11-20 12:20:29 -05:00
sublipri
f45d1d3676
ID3v2: Add test for frames with null terminators
2023-10-23 19:56:33 -04:00
Serial
cab578de74
MP4: Add a test for handling invalid atom types in Ilst
2023-10-17 14:12:11 -04:00
Serial
aa50837ecc
Tests: Fix old Id3v2Tag tests
2023-10-01 11:00:05 -04:00
Serial
4767f5da08
ID3v2: Don't expect text frames to be terminated
2023-10-01 10:19:18 -04:00
Serial
aea857cec2
Tests/Fuzz: Fix arguments to Picture::from_flac_bytes
2023-09-30 13:50:05 -04:00
Serial
553d16fa88
APE: Fix property reading on old stream versions
...
This also makes property reading take `ParsingMode` into account.
2023-07-28 13:14:56 -04:00
Serial
5eb032a3d4
FLAC: Do not error on multiple VorbisComments when not strict
...
This is not allowed [by spec](https://xiph.org/flac/format.html#def_VORBIS_COMMENT ), but is still possible to encounter in the wild. Now we will just tag whichever tag happens to be latest in the stream and use it, they **will not be merged** like other formats (such as ID3v2 in MP3) where multiple tags are valid.
2023-07-27 05:18:42 -04:00
Serial
9fdd6b610a
ID3v2: Add tests for OWNE and RVA2 frame parsing
2023-07-20 12:48:06 -04:00
Serial
7b98078317
ID3v2: Support PRIV frames
2023-07-20 12:48:06 -04:00
Serial
9a98739b27
ID3v2: Support ETCO frames
2023-07-20 12:48:06 -04:00
Serial
425fb77816
probe: Support ParseOptions::max_junk_bytes
in Probe::guess_file_type
2023-07-08 12:57:40 -04:00
Frieder Hannenheim
f3841a37eb
Cargo fix & format
2023-07-04 20:52:10 -04:00
Frieder Hannenheim
f191df4e53
Fix test
2023-07-04 20:52:10 -04:00
Frieder Hannenheim
d4a67d0235
Add test (not working yet)
2023-07-04 20:52:10 -04:00
Serial
fb0838ba3b
ID3v2: Add a test for #214
2023-07-03 16:59:33 -04:00
Serial
045874829f
Tests: Add missing Musepack SV5 test
2023-06-06 10:34:37 -04:00
Serial
62190b8f9f
musepack: Support SV4-SV6 property reading
2023-06-06 10:34:37 -04:00
Serial
d89250eef7
musepack: Support SV7 property reading
2023-06-06 10:34:37 -04:00
Serial
8c854d54a1
musepack: Add SV8 properties test
2023-06-06 10:34:37 -04:00
Serial
fc1186bc5a
musepack: Support MPC stream version 8
2023-06-06 10:34:37 -04:00
Serial
8d696e8704
ID3v2: Convert remaining types to UpperCamelCase
2023-04-28 02:17:19 -04:00
Serial
cb01e82d07
ID3v2: Rename ID3v2Tag
to Id3v2Tag
2023-04-28 02:17:19 -04:00
Serial
a6b7823d73
ID3v2: Stop eagerly allocating frame content
2023-04-23 19:21:08 -04:00
Serial
55bcd467eb
ID3v2: Validate size before and after reading additional flag data
2023-04-23 15:40:41 -04:00
Serial
cf2488d5d5
MPEG: Fix subtraction by zero panic regression
...
Caught by `mpegfile_read_from` fuzz target, in the event that the extended header has a size >= the total tag size.
The regression was introduced in 080742d392
.
2023-04-23 15:15:24 -04:00
Serial
f136610045
ID3v2: Add test for UTF-16 SYLT en/decoding
2023-04-21 22:51:59 -04:00
Serial
48df6ccae4
mpeg: Switch MPEGFile
/MPEGProperties
to UpperCamelCase
2023-04-21 20:35:21 -04:00
Serial
ce8c26f2b8
tag: Switch TagType
variants to UpperCamelCase
2023-04-21 20:35:21 -04:00
Serial
8920a39f93
file: Switch FileType
variants to UpperCamelCase
2023-04-21 20:35:21 -04:00
Serial
738784b1e9
ID3v2: Support audio-text accessibility (ATXT) frame
2023-04-16 13:16:12 -04:00
Serial
e441a36c4f
Tests: Fix tests for new APIs
2023-04-14 02:44:21 -04:00
Uwe Klotz
e3fa808d96
wav: Fix issue #174 and add regression test
2023-04-06 21:20:44 -04:00
Serial
18933087d5
Tags: Make method names consistent
2023-03-18 13:48:21 -04:00
Serial
7ac4ab4cbd
Clippy: Apply lints across projects
2023-03-13 20:25:35 -04:00
Serial
24b2d7d24d
Tests: Fix incorrect atom size in non_full_meta_atom asset
2023-03-13 20:14:49 -04:00
Keita Kita
94f8aac840
ID3v2: Change default number from 1 to 0 for track and disk
2023-02-28 08:43:56 -05:00
Keita Kita
32ddd3b65e
ID3v2: Merge number pair of track and disk while saving tag
2023-02-28 08:43:56 -05:00
Uwe Klotz
b07adbed33
Use Seek::rewind() in tests
2023-02-02 16:38:28 -05:00
Uwe Klotz
53eb2184b8
id3v2: Do not require clients to use Cow in public API
2023-01-07 12:56:50 -05:00