Commit graph

166 commits

Author SHA1 Message Date
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
fb531877ac Add conversion tests
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-06-29 14:51:49 -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
0828c2d6a2 Update test assets
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-06-27 14:31:01 -04:00
Serial
bd74d403ea Update tests for covers
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-06-26 15:39:11 -04:00
Serial
63a92c87ef Fix writing to flac + some cleanup 2021-05-19 15:01:44 -04:00
Serial
0d5724d661 Pictures now parse properly 2021-05-19 01:00:18 -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
36d9d5195a Partial cover support for MP4
Since MP4 doesn't let you differentiate one image from another, all images are PictureType::Other, and all back_cover functions are aliases for front_cover.
2021-05-16 21:46:05 -04:00
Serial
16f4ecce0d Cover support for ape 2021-05-16 21:12:38 -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
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
c285b36629 Album cover support for ogg/opus/flac 2021-04-23 21:15:33 -04:00
Serial
c182b293fb Fix all clippy errors 2021-04-22 22:57:47 -04:00
Serial
c372a491a7 Make clippy happy 2021-04-22 22:50:13 -04:00
Serial
754bf03413 Make things less confusing to use 2021-04-22 18:01:09 -04:00
Serial
bd48066b64 Add extra verification to tests 2021-04-22 13:56:51 -04:00
Serial
186d540d00 Clippy 2021-04-22 12:59:16 -04:00
Serial
dc23ec1ffd Support AIFF 2021-04-22 12:57:20 -04:00
Serial
fbfe0e916b Cleanup 2021-04-22 11:15:19 -04:00
Serial
6b770dc14c Give features better names 2021-04-21 14:22:52 -04:00
Serial
90161287ab Add some benchmarks for reading from extension/signature 2021-04-21 13:48:21 -04:00
Serial
05c7ac6d04 Support ID3 tags in RIFF chunks 2021-04-21 12:49:27 -04:00
Serial
253609cc4b Add the ability to guess file format from file signature
Adds a new DetermineFrom enum to be used in Tag::read_from_path. This allows you to choose between guessing from extension or file signature.
2021-04-20 23:06:03 -04:00
Serial
baa1b1fd24 Hopefully the last time the test assets need to be updated 2021-04-20 20:51:12 -04:00
Serial
8c79ea46cb Managed to delete the test assets again 2021-04-20 12:08:44 -04:00
Serial
cdfa5de045 Forgot to remove old album_artists_vec method for Mp4Tag 2021-04-20 12:06:39 -04:00
Serial
df2e728974 Merge remote-tracking branch 'origin/main' 2021-04-18 15:39:13 -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
Alex
c8bdca8ea5
New wav test asset 2021-04-18 14:38:37 -04:00
Alex
71cb4ffd69
Remove old (broken) WAV test asset 2021-04-18 14:37:58 -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
a0e7a31322 Add test assets to gitignore
Forgot to do this earlier

Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-04-15 13:33:50 -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
Serial
7c72287586 Created conversion for metaflac::Tag -> VorbisTag, fixed inner test 2021-04-06 22:33:39 -04:00
Serial
702f6617c5 VERY rough implementation of a single VorbisTag struct for all formats using vorbis comments, seems to work so far. 2021-04-06 20:57:30 -04:00
Serial
f9d8981ca2 Fix existing tests 2021-04-06 16:37:31 -04:00
Serial
0a9d87553f Move assets to tests folder 2021-04-03 23:32:54 -04:00
Serial
9950eea7fa Start work to use Album struct in AnyTag
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-04-03 22:38:48 -04:00
Serial
4e33e9edaa Implemented read_from_path and a test for opus
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-04-03 14:31:13 -04:00
Serial
521f53a9a7 Added extra tests for future formats, ogg test passes
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-04-03 14:00:21 -04:00
Serial
555819e6a8 Initial work
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-04-02 20:47:44 -04:00
Tianyi
1206194d5f 0.2.7182 2020-10-29 18:01:21 +00:00
Tianyi
aa945ae7b6 it worked! From dyn Tag into any concrete tag without cloning 2020-10-29 13:26:35 +00:00
Tianyi
6e10a0b93d use TryFrom instead of From for downcasting because it could fail 2020-10-27 22:55:45 +00:00
Tianyi
0418d98955 impl downcasts
just accidentally discovered that I could write impl From<Box<dyn xxx>>
2020-10-27 22:24:05 +00:00
Tianyi
ff2e0c6959 RTFM 2020-10-27 20:26:59 +00:00
Tianyi
f65addee9b RTFM 2020-10-27 19:57:27 +00:00
Tianyi Shi
fececf76e9 black magic 2020-10-27 15:33:19 +00:00
Tianyi Shi
47ae10071a downcast 2020-10-27 15:24:54 +00:00
Tianyi Shi
c72f09d3e2 add frominner and intoinner traits 2020-10-27 15:00:22 +00:00
Tianyi Shi
873a6e831d refactor 2020-10-27 14:38:31 +00:00
Tianyi Shi
d0b2409164 remove cow 2020-10-27 12:43:32 +00:00
Tianyi
d4af2dcb03 prevent clone 2020-10-27 12:01:15 +00:00
Tianyi
6abb1e9d4d config 2020-10-27 11:40:51 +00:00
Tianyi
d2d1bedafa v0.2.3 2020-10-27 02:40:57 +00:00
Tianyi
bf71a050df 0.2.2 2020-10-27 00:52:29 +00:00
Tianyi
7450d36348 convert tags; 0.2.0 2020-10-26 20:43:11 +00:00
Tianyi
3b1280fcee cow 2020-10-26 15:37:10 +00:00
Tianyi
caabc9a3e5 refactor 2020-10-26 02:14:28 +00:00
Tianyi
aabb741a6c add some tests 2020-10-26 01:43:18 +00:00