Commit graph

993 commits

Author SHA1 Message Date
Serial
ecdb7ff878 MP4: Stop validating flags for gnre atom upgrade 2022-12-16 12:24:51 -05:00
Alex
7d1dcef209
README: Update workflow status badge 2022-12-15 22:15:32 -05:00
Serial
1923c36c66 changelog: Add entries for ID3v2/Accessor changes 2022-12-12 14:00:26 -05:00
Serial
4de9239af9 Clippy: Fix single_match 2022-12-12 14:00:26 -05:00
Serial
4c5538bba0 Accessor: Make text getters return Cow<str> to allow for editing
This is an unfortunate compromise that needed to be made to make it possible to change the null separators in ID3v2.4 to slashes prior to returning the value.
2022-12-12 14:00:26 -05:00
Serial
d971615952 ID3v2: Properly handle solidus character (U+002F) in text frames
V2 and V3 allow for the separation of multiple values with the solidus (/) character, while in V4 the separator is null (0). This was not accounted for previously, and would break valid V4 strings ("Foo / Bar" would be split into "Foo " and " Bar").

closes #82
2022-12-12 14:00:26 -05:00
dependabot[bot]
e24585b420 build(deps): update base64 requirement from 0.13.0 to 0.20.0
Updates the requirements on [base64](https://github.com/marshallpierce/rust-base64) to permit the latest version.
- [Release notes](https://github.com/marshallpierce/rust-base64/releases)
- [Changelog](https://github.com/marshallpierce/rust-base64/blob/master/RELEASE-NOTES.md)
- [Commits](https://github.com/marshallpierce/rust-base64/compare/v0.13.0...v0.20.0)

---
updated-dependencies:
- dependency-name: base64
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-12 13:55:16 -05:00
Serial
21a4996226
Clippy: Fix unnecessary_lazy_evaluations 2022-12-10 12:27:27 -05:00
Serial
6df1a462b9
Misc: Switch enum Default impls to derives 2022-12-10 12:25:20 -05:00
Serial
42761e6bad TaggedFile: Add temporary fix for save_to breakage due to tag order
Depending on the order of the tags in a `TaggedFile`, since we write the tags independently of each other, they could step on each other's toes and leave the file in position where it cannot be probed. This wouldn't break the file, nor cause partial writes of tags, however there is a chance not *all* of the tags stored in the `TaggedFile` would be written.
2022-12-10 12:18:34 -05:00
Serial
c5bddba0cf file: Add BoundTaggedFile
closes #73
2022-12-10 12:18:34 -05:00
Serial
7573f60a0c TaggedFile: Split methods out into TaggedFileExt trait 2022-12-10 12:18:34 -05:00
Serial
81e52ce347
lofty_attr: Expose LoftyFile derive through main crate 2022-12-10 10:54:58 -05:00
Serial
263e0611fe ogg_pager: Fix packet content being overwritten before flush 2022-12-07 01:01:12 -05:00
Serial
79c4579d73 changelog: Add entry for changes to ogg_pager::paginate 2022-12-07 01:01:12 -05:00
Serial
2718a73e29 ogg_pager: Move Packets to its own module 2022-12-07 01:01:12 -05:00
Serial
ce4e2b1715 ogg_pager: Document Packets::{paginate, write_to} 2022-12-07 01:01:12 -05:00
Serial
56e1ec6b02 OGG: Remove unused code 2022-12-07 01:01:12 -05:00
Serial
62c2b72ad3 OGG: Only read necessary number of packets for format 2022-12-07 01:01:12 -05:00
Serial
2cc96f618b OGG/Opus: Fix property reading 2022-12-07 01:01:12 -05:00
Serial
365b5c1ce3 Vorbis Comments: Fix vorbis_comments_re_read test 2022-12-07 01:01:12 -05:00
Serial
4256bb254b OGG: Make use of packets when writing 2022-12-07 01:01:12 -05:00
Serial
75adb69ed1 ogg_pager: Redo pagination for proper packet handling 2022-12-07 01:01:12 -05:00
Serial
bf0ac4b0d1 ogg_pager: Set CRC to 0 prior to generation 2022-12-07 01:01:12 -05:00
Serial
5059258f35 ogg_pager: Store segment table in Page 2022-12-07 01:01:12 -05:00
Serial
cbe865dade ogg_pager: Remove Page::new 2022-12-07 01:01:12 -05:00
Serial
83e21b63bb ogg_pager: Fix Packets::read for multi-page reads 2022-12-07 01:01:12 -05:00
Serial
3776a9d960 ogg_pager: Add Packets::set 2022-12-07 01:01:12 -05:00
Serial
4061426814 Clippy: Apply lints for other projects 2022-11-24 15:26:36 -05:00
Serial
1a866c0c32 Clippy: Apply new nightly lints 2022-11-24 15:12:56 -05:00
Serial
0928730c14 changelog: Add entry for ogg_pager::PageHeader 2022-11-24 14:24:57 -05:00
Serial
3f47c83632 ogg_pager: Document Packets struct 2022-11-24 14:24:57 -05:00
Serial
c9d73a7ae7 changelog: Add entries for OGG packet reading 2022-11-24 14:24:57 -05:00
Serial
8051fafbc8 OGG: Read entire packets instead of pages
This makes the handling of OGG files a lot more spec-compliant, and simpler overall.
2022-11-24 14:24:57 -05:00
Serial
a08088ddf8 FileResolver: Fix link to Probe in docs 2022-11-24 14:24:57 -05:00
Serial
742eaa680f Ilst: Add AtomData::Bool for flag atoms 2022-11-09 14:14:17 -05:00
Serial
e4c0ea5579 TaggedFile: Rename take method to remove 2022-11-09 14:12:30 -05:00
Serial
7fdc3e0b2a lofty_attr: Return removed tags in <File>::remove_*
Previously, we just removed and dropped the tag. That should really be left up to the user, though.
2022-11-09 14:12:30 -05:00
Serial
793b2d03d1
changelog: Add entry for TagExt::contains 2022-11-05 09:57:39 -04:00
Serial
544aa7a411
TagExt: Add TagExt::contains 2022-11-05 09:54:37 -04:00
Serial
193a4ed7c7
Add SUPPORTED_FORMATS.md to include 2022-10-30 16:58:21 -04:00
Serial
cb6c4852e2
0.9.0 2022-10-30 16:55:12 -04:00
Serial
643fbcb219
lofty_attr: 0.4.0 2022-10-30 16:49:47 -04:00
Serial
4515bf3ae2
AACProperties: Specify possible MpegVersion variants 2022-10-28 22:18:29 -04:00
Serial
ec20ea7681
ItemKey: Fix wrong Comment key in AIFF_TEXT_MAP 2022-10-20 23:29:00 -04:00
Serial
a50bfe911f
ItemKey: Use spaces for alignment in gen_map! 2022-10-20 23:26:46 -04:00
Serial
8df3c01aa3
Misc: Make Cargo.toml nicer to look at 2022-10-15 10:57:34 -04:00
Serial
6562166eb4
Misc: Hide criterion behind a flag to shorten CI time 2022-10-15 10:45:51 -04:00
Serial
0039c86182
docs: Make a slightly better comment for *Properties::duration 2022-10-15 10:27:21 -04:00
Serial
c675a5eb05
docs: Stop putting doc comments below attributes 2022-10-15 10:23:35 -04:00