Commit graph

1698 commits

Author SHA1 Message Date
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
Serial
d4e58ea15d changelog: Add entry for ID3v2.3 write support 2024-07-04 11:53:50 -04:00
Serial
3fd6799528 Clippy: Allow struct_excessive_bools 2024-07-04 11:53:50 -04:00
Serial
a6b56c620d ID3v2: Support writing ID3v2.3 tags
closes #62
2024-07-04 11:53:50 -04:00
Serial
ae94af1a88 config: Add ParseOptions::implicit_conversions 2024-07-04 11:53:50 -04:00
Serial
40e11ca729 FLAC: Allow skipping picture blocks 2024-07-04 11:39:52 -04:00
Serial
13337fc7fc changelog: Add entry for ParseOptions::read_cover_art 2024-07-04 11:39:52 -04:00
Serial
6e821b7e3e ParseOptions: Add read_cover_art 2024-07-04 11:39:52 -04:00
Serial
89dd85c3dc ParseOptions: Add ParseOptions::read_tags
This makes it possible to use Lofty exclusively for its property reading, which many projects do at this point.

closes #251
2024-07-04 11:18:25 -04:00
Serial
b2c310d709
0.20.1 2024-07-02 16:09:40 -04:00
Serial
b7f86d2844 changelog: Add entry for MPEG duration fix 2024-07-02 16:07:31 -04:00
Serial
b7adbd19ef MPEG: Improve duration calculation
For files with a VBR header:
Thanks to @naglis for correcting the length calculation. (issue: #412)

For files without a VBR header:
`rev_search_for_frame_header` would get tripped up on files with trailing data
that looked like a frame sync (ex. 0xFFFF). This would also result in durations that are
slightly off.

For now, VBR streams are still assumed to be CBR. I have not seen a file this does not
work for yet. Eventually it would be nice to have more accurate calculation, but that will require we read the *entire* file.
2024-07-02 16:07:31 -04:00
Serial
dde24d5b6d Clippy: Fix doc_lazy_continuation 2024-06-11 17:38:17 -04:00
Serial
89adc98b8e
Clippy: Fix lint_groups_priority 2024-06-06 13:27:05 -04:00
Serial
cd86aaad9c
0.20.0 2024-06-06 13:20:32 -04:00
Serial
657add15d8
lofty_attr: 0.11.0 2024-06-06 13:17:41 -04:00
dependabot[bot]
943a7e1d59 build(deps): update iai-callgrind requirement from 0.10.2 to 0.11.0
Updates the requirements on [iai-callgrind](https://github.com/iai-callgrind/iai-callgrind) to permit the latest version.
- [Release notes](https://github.com/iai-callgrind/iai-callgrind/releases)
- [Changelog](https://github.com/iai-callgrind/iai-callgrind/blob/main/CHANGELOG.md)
- [Commits](https://github.com/iai-callgrind/iai-callgrind/compare/v0.10.2...v0.11.0)

---
updated-dependencies:
- dependency-name: iai-callgrind
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-06 13:15:46 -04:00
Serial
e5bda0cfca changelog: Add entry for BoundTaggedFile::into_inner 2024-06-06 11:20:19 -04:00
Serial
b57992b128 Tests: Refactor BoundTaggedFile::into_inner test 2024-06-06 11:20:19 -04:00
bruh
fee3c1fb0c [feat] add into_inner for BoundTaggedFile 2024-06-06 11:20:19 -04:00
Serial
739491f238 MP4: Dont discard tags on multiple udta 2024-06-06 11:19:33 -04:00
Serial
d2d4b81fe0 Musepack: Improve audio properties 2024-05-09 13:14:24 -04:00
Serial
da91e43d02
WAV: Fix accidental negation 2024-05-07 15:19:06 -04:00
Serial
f340ebf39b WAV: Improve audio bitrate calculation 2024-05-07 15:10:39 -04:00
Serial
d067933be3 MP4: Improve audio bitrate calculation 2024-05-06 13:21:10 -04:00
Serial
4d1e7be87e examples: Add missing entries to Cargo.toml 2024-05-06 13:17:23 -04:00
Serial
c2e47d9dcb
benches: Update for recent changes 2024-05-04 17:20:42 -04:00
Serial
5b40a2f3a4 Tests: Fix Clippy lints 2024-05-04 16:46:09 -04:00
Serial
621ab57fe1
README: Add sponsors badge 2024-05-04 16:33:22 -04:00
Serial
b45f456232 changelog: Add entry for MPEG duration fix 2024-05-04 16:16:47 -04:00
Serial
24da5bac31 MPEG: Improve duration estimation 2024-05-04 16:16:47 -04:00
Serial
4eae6e12a7
ID3v2: Remove flags from PrivateFrame constructor 2024-05-04 12:34:36 -04:00
Serial
32fb134e67 ID3v2: Disallow 4 character TXXX descriptions as ItemKey 2024-05-03 12:17:29 -04:00
Serial
833e34e03a ID3v2: Cleanup SplitTag impl 2024-05-03 11:37:52 -04:00
Serial
0332d65441 fmt: Fix whitespace to help rustfmt 2024-05-03 10:55:43 -04:00
Serial
dc80f763a3 ID3v2: Fix some comment tests 2024-05-03 10:55:43 -04:00
Serial
928410da6a ID3v2: Allow for generic conversion of language frames 2024-05-03 10:55:43 -04:00
Serial
15ce1e1de0 ID3v2: Ensure ordered comparison in retention test 2024-05-01 13:18:38 -04:00
Serial
dc018f3963 doc: Fix some broken links 2024-05-01 13:18:38 -04:00
Serial
2ced6e5fef changelog: Add missing issue link 2024-05-01 13:18:38 -04:00
Serial
29f032c0d4 changelog: Add more details about special item retention 2024-05-01 13:18:38 -04:00
Serial
4b2fc06192 Tag: Preserve Ilst special items by default 2024-05-01 13:18:38 -04:00
Serial
843fc0d666 Tag: Preserve ID3v2 special items by default 2024-05-01 13:18:38 -04:00
Serial
8eba1bbceb GlobalOptions: Add preserve_format_specific_items() 2024-05-01 13:18:38 -04:00
Serial
e53ca3b42d changelog: Add PR link for Frame enum change 2024-05-01 11:37:06 -04:00
Serial
11e765c932 Clippy: explicit-deref-methods 2024-05-01 11:37:06 -04:00
Serial
5c9966109a ID3v2: Turn Frame into an enum 2024-05-01 11:37:06 -04:00
Serial
4423b5a62b changelog: Add entry for ID3v2 timestamps 2024-04-29 11:51:57 -04:00
Serial
0f8ce7a4f0 ID3v2: Parse timestamp frames 2024-04-29 11:51:57 -04:00