Serial
bf80fec0dd
probe: Document how to use ParsingMode
2023-06-03 13:36:02 -04:00
Serial
f8267641a9
ID3v2: Don't require a UFID owner in ParsingMode::BestAttempt
2023-06-03 13:36:02 -04:00
Serial
21aa7d929d
ID3v2: Pass parsing mode to frame parsing
2023-06-03 13:36:02 -04:00
Serial
464be3cb14
probe: Add new default ParsingMode
variant
...
The new `BestAttempt` variant will be less eager to error than the previous default, `ParsingMode::Strict`. This comes with the consequence that the input may not be *entirely* correct.
2023-06-03 13:36:02 -04:00
Serial
dec830307c
MP4: Fix parsing of plID atoms with incorrect codes
...
closes #201
2023-05-28 17:25:07 -04:00
Serial
57fd5f42ea
ID3v2: Fix build without id3v2_compression_support
2023-05-08 11:41:07 -04:00
Serial
a60aed33e0
Clippy: Fix default_constructed_unit_structs
2023-05-08 11:31:28 -04:00
Serial
0cbe13cb3f
ID3v2: Correct equality/hash impl for AudioTextFrame
...
According to https://mutagen-specs.readthedocs.io/en/latest/id3/id3v2-accessibility-1.0.html#proposed-audio-text-frame :
"More than one audio-text frame may be present in a tag but each must carry a unique string in the Equivalent text field."
2023-04-28 02:33:38 -04:00
Serial
51df3814c1
ID3v2: Fix POPM frame write verification
2023-04-28 02:32:46 -04:00
Serial
e6f0c0bcb0
ID3v2: Flatten GeneralEncapsulatedObject
2023-04-28 02:26:53 -04:00
Serial
11309bc49e
ID3v2: Flatten SynchronizedText
2023-04-28 02:26:53 -04:00
Serial
b1dd712cc3
ID3v1: Rename ID3v1Tag
to Id3v1Tag
2023-04-28 02:17:19 -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
d4943b4108
ID3v2: Remove unnecessary allocation of ID3v2Tag
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
3aa2bf1740
ID3v2: Properly handle compressed frames
2023-04-22 14:12:42 -04:00
Serial
f136610045
ID3v2: Add test for UTF-16 SYLT en/decoding
2023-04-21 22:51:59 -04:00
Serial
726fbe4d58
util: Return bytes read from decode_text
2023-04-21 22:51:29 -04:00
Serial
c772d65dca
ID3v2: Fix parsing of SYLT frames
2023-04-21 21:54:33 -04:00
Serial
0cba551168
ID3v2: Add parse methods to CommentFrame
and UnsynchronizedTextFrame
2023-04-21 21:21:14 -04:00
Serial
88caec39a4
ID3v2: Fix SynchronizedText
doc link
2023-04-21 20:35:21 -04:00
Serial
b5c71e8fde
ID3v2: Switch FrameID
to UpperCamelCase
2023-04-21 20:35:21 -04:00
Serial
d7dffcf0d2
item: Switch ItemKey
variants to UpperCamelCase
2023-04-21 20:35:21 -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
55ba9dccc1
ID3v2: Switch error type names 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
a1b7fb7e16
TagExt: Add a default impl for save_to_path
2023-04-15 20:27:59 -04:00
Serial
acb7b2482c
ID3v2: Update FrameValue variant names in writing verification error
2023-04-14 02:44:21 -04:00
Serial
4a327847dc
ID3v2: Consistently name abbreviated FrameValue
variants
2023-04-14 02:44:21 -04:00
Serial
04a77cc0fa
fmt
2023-04-14 02:44:21 -04:00
Serial
91470739da
ID3v2: Make Frame::new()
's value generic
2023-04-14 02:44:21 -04:00
Serial
4d5932f3d2
ID3v2: Deduplicate CommentFrame
/UnsynchronizedTextFrame
logic
2023-04-14 02:44:21 -04:00
Serial
79a8259021
ID3v2: Introduce UnsynchronizedTextFrame
2023-04-14 02:44:21 -04:00
Serial
ff1509a38c
ID3v2: Introduce CommentFrame
2023-04-14 02:44:21 -04:00
Serial
4db2559314
ID3v2: Introduce UrlLinkFrame
2023-04-14 02:44:21 -04:00
Serial
f7f640b7eb
ID3v2: Introduce TextInformationFrame
2023-04-14 02:44:21 -04:00
Serial
2dc7569017
ID3v2: Create From
impls for FrameValue
2023-04-14 02:44:21 -04:00
Serial
f8972f9122
ID3v2: Move Extended{Text,Url}Frame
parse functions to structs
2023-04-14 02:44:21 -04:00
Serial
07b54db648
ID3v2: Make item method name and order consistent
2023-04-14 02:44:21 -04:00
Serial
452df13fff
ID3v2: Introduce AttachedPictureFrame
2023-04-14 02:44:21 -04:00
Serial
d0b9a50d03
ID3v2: Introduce ExtendedUrlFrame
2023-04-14 02:44:21 -04:00
Serial
a126dfa196
ID3v2: Rename EncodedTextFrame
to ExtendedTextFrame
2023-04-14 02:44:21 -04:00
Serial
8f67723e37
ID3v2: Move item exports to v2/items/mod.rs
2023-04-14 02:44:21 -04:00
Serial
4d5d5540df
ID3v2: Stop using a String for SyncTextInformation::language
2023-04-14 02:44:21 -04:00
Serial
46127a0912
ID3v2: Allow creation of more synchsafe integer types
2023-04-12 22:39:11 -04:00