Commit graph

280 commits

Author SHA1 Message Date
Serial
f5f6345cfd Finish ID3v2 picture parsing 2021-08-19 14:26:56 -04:00
Serial
888640cb10 Fix some feature issues 2021-08-18 22:13:59 -04:00
Serial
60846d23dc Rename features 2021-08-18 21:58:27 -04:00
Serial
06bf9b0862 Rename error variant 2021-08-18 21:27:31 -04:00
Serial
471dc2f638 Add Tag::new, Tag::iter, and Tag::retain. Add tag mappings for all ID3v2 versions 2021-08-18 21:26:06 -04:00
Serial
0a455f2dec Remove old comment 2021-08-18 18:59:23 -04:00
Serial
3ea1684cdb Allow mapping a key to an ItemKey 2021-08-18 18:58:08 -04:00
Serial
a822c7cdd0 Start work for ID3 2021-08-18 18:49:33 -04:00
Serial
419f8457a3 Start work to expose all tags 2021-08-02 17:25:31 -04:00
Serial
b4ef26904f Actually read pictures correctly 2021-08-01 22:55:37 -04:00
Serial
3563713701 Fix comment and ID3v2 skip read 2021-08-01 15:45:13 -04:00
Serial
4c5d827bf3 Fix doc comments again 2021-07-31 23:16:32 -04:00
Serial
68b584067d Fix doc comments 2021-07-31 23:15:40 -04:00
Serial
fb96411031 Add back FLAC tag removal 2021-07-31 22:40:33 -04:00
Serial
b64091d649 Add APE property reading, remove ape as a dependency 2021-07-31 21:33:52 -04:00
Serial
a739dcd28e Add test for MP4 property reading 2021-07-30 15:13:32 -04:00
Serial
93d0431134 Add MPEG property reading 2021-07-29 21:07:08 -04:00
Serial
40c73050ee Clippy 2021-07-28 19:10:59 -04:00
Serial
efd4239c5a Rebase and update changes 2021-07-28 18:53:50 -04:00
Serial
1c1b7f5916 RiffTag return default on error 2021-07-19 21:10:36 -04:00
Serial
134bef896a Update mp4ameta 2021-07-19 21:01:00 -04:00
Serial
29abe33324 Add credit 2021-07-19 20:34:12 -04:00
Serial
66b5bbd081 Add Tag::remove_from 2021-07-19 20:32:36 -04:00
Serial
9dfb740737 Fix errors 2021-07-19 14:21:38 -04:00
Serial
d2a6e35537 Don't error out on an empty tag 2021-07-19 13:30:24 -04:00
Serial
c8f6a0ebc2 Switch to new derive proc macro 2021-07-19 12:51:08 -04:00
Serial
9f50b48764 Temporarily use rust-ape fork
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-10 22:53:34 -04:00
Serial
0173d9e3e2 Add ability to get/remove custom keys
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-10 21:03:20 -04:00
Serial
aae6200ced Add AiffTag to docs
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-10 20:34:34 -04:00
Serial
65b5f131aa Add AudioTagEdit::tag_type
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-10 20:24:12 -04:00
Serial
c673c7fcbb Add missing title methods to Album
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-10 19:59:56 -04:00
Serial
a9b78c7aa0 Start using UniCase for OGG formats
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-10 14:54:54 -04:00
Serial
03a3122c36 Wrong encoder key in APE method
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-10 12:50:27 -04:00
Serial
dfd1495146 Make APE keys case insensitive as the spec isn't normally followed
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-10 12:49:31 -04:00
Serial
8eb8b12f32 Add encoder methods
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-10 12:31:56 -04:00
Serial
72e361a097 Remove user-provided Cows for Picture::new
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-10 12:16:22 -04:00
Serial
9fe7f6dbef Fix comment
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-09 15:32:24 -04:00
Serial
1cfdb611a6 Use get_set_methods in RiffTag
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-09 15:26:42 -04:00
Serial
e1b7dce2cb Start using new get_set_methods macro
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-09 15:15:33 -04:00
Serial
547d5412c0 Move methods out of OggInnerTag
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-09 14:48:47 -04:00
Serial
89af607e2c Get rid of remove_disc method
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-09 14:42:05 -04:00
Serial
1fe26739a1 Missing references
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-09 14:32:12 -04:00
Serial
244cff1fee More sensible cover methods for Album
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-09 14:31:06 -04:00
Serial
ac91cbfd63 Add methods to set and remove all pictures, remove pointless panic
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-09 13:10:49 -04:00
Serial
e6eb8d8d40 AIFF read sanity check
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-09 12:40:44 -04:00
Serial
3e2d9abcae Add lyricist and composer methods
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-09 12:11:16 -04:00
Serial
edd315467f Separate date and year methods
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-09 11:57:54 -04:00
Serial
10ca5c0295 Create AudioTagEdit methods with macros, remove useless methods, rename unclear methods
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-09 11:45:37 -04:00
Serial
4cdc4a7589 Change bpm to return u16 because of mp4ameta
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-09 11:08:24 -04:00
Serial
7fe21b0315 Add lyrics and bpm methods
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-08 22:46:18 -04:00
Serial
b4d8c3657d Add genre methods
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-08 22:07:59 -04:00
Serial
9878b5172f Add back RiffTag::date
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-08 22:01:24 -04:00
Serial
12b97fa44f Fix aiff writing
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-08 20:10:28 -04:00
Serial
08ec8fca3a Clippy
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-08 19:35:47 -04:00
Serial
cb725e882d Add copyright methods
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-08 19:16:38 -04:00
Serial
f9c2321ba1 Remove pointless Vec
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-08 18:06:00 -04:00
Serial
7dd852d7b7 Fix mistake
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-07 22:48:05 -04:00
Serial
f46cd1b301 OggTag cleanup
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-07 22:46:02 -04:00
Serial
09c248c6c9 Reorder derives
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-07 21:36:06 -04:00
Serial
5e641bab28 Remove consts
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-07 21:34:21 -04:00
Serial
fe58abd7e6 Cleanup
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-07 21:27:28 -04:00
Serial
8b82e0969b Fix feature issue and add AIFF bench
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-07 21:26:30 -04:00
Serial
e949d2bb85 Add support for AIFF chunks
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-07 17:29:53 -04:00
Serial
ca52551807 Add empty defaults to AudioTagEdit methods
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-07 15:07:50 -04:00
Serial
0126bbcd8f Fix error message
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-06 22:17:48 -04:00
Serial
46a94874fa Remove pointless conversions in RIFF
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-06 21:55:10 -04:00
Serial
9698e3cbc0 Cleanup
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-06 21:33:10 -04:00
Serial
fe1c81b583 Remove pointless const
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-06 21:25:58 -04:00
Serial
5980432beb Further RIFF cleanup
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-06 21:25:11 -04:00
Serial
d403b11783 RIFF cleanup
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-06 12:17:08 -04:00
Serial
2a3e54ba25 Remove riff as a dependency
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-06 11:29:00 -04:00
Serial
b0709c0e8f Remove useless RiffTag methods
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-05 23:56:49 -04:00
Serial
25f0341757 Fix ape panic
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-05 23:15:45 -04:00
Serial
d97a9ac6e7 Document concrete types
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-05 21:13:03 -04:00
Serial
275faf4d2d Document AnyTag -> concrete conversion, fix various doc comments
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-05 21:07:05 -04:00
Serial
e103a481df No longer store artists in a Vec, and stop assuming the delimiter
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-05 20:49:19 -04:00
Serial
5754fd7c67 Fix missing feature lock
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-05 20:35:37 -04:00
Serial
95a486e339 Add AnyTag::new
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-05 20:27:59 -04:00
Serial
445d5751b6 Make OggTag::write_to guess the format from the file content, finish up fixing features
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-06-30 01:00:40 -04:00
Serial
e7af53dde7 Fix accidental redefinition
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-06-29 23:40:48 -04:00
Serial
3eac3b5bc2 Continue to fix feature issues
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-06-29 23:38:20 -04:00
Serial
cc8a0a21d5 Rename VorbisTag, fix feature issue
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-06-29 23:18:54 -04:00
Serial
1df0908c38 Remove old comments
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-06-29 23:09:58 -04:00
Serial
b80d8a062f Preserve OggFormat when converting to TagType::Ogg
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-06-29 14:51:08 -04:00
Serial
845456b9c7 Fix spacing
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-06-29 14:45:57 -04:00
Serial
30d62a9064 Remove a comment that no longer applies
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-06-29 14:44:58 -04:00
Serial
f250101028 Missed a mention of duration
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-06-27 14:46:20 -04:00
Serial
d5be11a40e Remove duration feature, out of the scope of this crate
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-06-27 14:42:50 -04:00
Serial
6959474c18 Add some comments
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-06-27 14:29:44 -04:00
Serial
bd183a821b Downgrade mp4ameta due to lifetime issues
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-06-27 14:15:31 -04:00
Serial
f75e693b7d Remove lewton and ogg as dependencies
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-06-27 13:56:08 -04:00
Serial
4498e04068 Multi-page write for Opus/Vorbis
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-06-27 13:47:27 -04:00
Serial
5c73d485fb Update vorbis_tag.rs
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-06-27 13:45:18 -04:00
Serial
ea0c6931b6 Do Picture conversion immediately after read
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-06-27 13:44:42 -04:00
Serial
d4148cf5da Actually retain the audio data in FLAC
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-06-27 13:43:06 -04:00
Serial
804f8f42a9 Add read function for vorbis/opus
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-06-27 12:49:08 -04:00
Serial
abe18f6242 Fix set_track method
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-06-27 12:34:07 -04:00
Serial
181b4cfef0 Update error.rs
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-06-26 17:04:02 -04:00
Serial
f10165f728 Move OGG page logic to its own crate
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-06-26 16:39:01 -04:00
Serial
7b58e72657 Add crc32 function for OGG pages
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-06-26 15:41:34 -04:00