Commit graph

62 commits

Author SHA1 Message Date
Serial
b6221c18b2
Remove types module 2022-03-04 09:07:17 -05:00
Serial
7b7e949b38 Restructure 2021-08-19 15:16:00 -04:00
Serial
efd4239c5a Rebase and update changes 2021-07-28 18:53:50 -04:00
Serial
66b5bbd081 Add Tag::remove_from 2021-07-19 20:32:36 -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
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
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
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
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
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
cb725e882d Add copyright methods
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-07-08 19:16:38 -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
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
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
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
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
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
2b1b009c1a Update TagType in traits.rs
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-06-26 15:37:50 -04:00
Serial
a6d49fd9ce Support new pictures and proc macro 2021-05-18 22:26:27 -04:00
Serial
d03f206d5a Rename features 2021-05-16 23:07:26 -04:00
Serial
29ff3d8030 Start work to support back covers
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-05-16 13:16:57 -04:00
Serial
79cbbd5339 Make filepath an optional dependency
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-05-16 02:47:26 -04:00
Serial
7f0501d95d Add date method
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-05-16 02:41:16 -04:00
Serial
83a0f84b9e Fully document the crate
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-05-16 00:39:19 -04:00
Serial
ccf9367b4e Support multiple picture types
This will be used in the future, for now only the front cover is accessible. This doesn't fully work for opus due to opus_headers only storing a single k/v pair.

Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-05-15 23:44:10 -04:00
Serial
c182b293fb Fix all clippy errors 2021-04-22 22:57:47 -04:00
Serial
dc23ec1ffd Support AIFF 2021-04-22 12:57:20 -04:00
Serial
6b770dc14c Give features better names 2021-04-21 14:22:52 -04:00
Serial
bc2bb8a92c Neater imports 2021-04-21 12:56:35 -04:00
Serial
05c7ac6d04 Support ID3 tags in RIFF chunks 2021-04-21 12:49:27 -04:00
Serial
4e01f98463 Use the correct names 2021-04-21 11:06:41 -04:00
Serial
8ff6bb52c8 Start work on duration
Added a duration field to each tag struct, and implemented duration reading for mp3. All other tags return None for now.
2021-04-20 15:15:05 -04:00
Serial
0dd57cc4da Remove old trait 2021-04-20 12:21:09 -04:00
Serial
e5231567cc Remove add_artist and add_album_artist
These were useless methods that shouldn't be handled by lofty anyway
2021-04-20 11:25:09 -04:00
Serial
f5c743f3aa Finish all methods except for album covers
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-04-18 15:32:59 -04:00
Serial
b072f0b0e5 Finally separate VorbisTag::read_from_path from the other tags
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-04-18 14:07:26 -04:00
Serial
4cc33b5e53 Start work on wav decoding
Very few IDs supported right now, test doesn't work yet, and this only supports RIFF INFO chunks, ID3 has to wait for https://github.com/polyfloyd/rust-id3/pull/64

Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-04-17 15:42:06 -04:00
Serial
001c33bf86 Implement read/write for ape
Quite a few weird things had to be done due to the ape crate's choices, and ape's lack of a standardized set of keys, but it all seems to work.

Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-04-15 13:26:06 -04:00
Serial
04a9ab4634 Clippy and some more doc comments
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-04-15 11:53:10 -04:00
Serial
ae81ff21e9 Clippy and misc cleanup
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-04-14 12:17:38 -04:00
Serial
0ec56ca015 Created conversion for VorbisTag -> metaflac::Tag
This fixes write_to for flac.

Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-04-14 11:14:08 -04:00
Serial
f956dfd3e2 Working (rough) implementation of write_to for ogg
ogg can now successfully be read from and written to. This breaks all other tests currently.

Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-04-13 23:29:13 -04:00