Commit graph

670 commits

Author SHA1 Message Date
Serial
4eb168a8ea
Cleanup 2022-01-25 14:42:32 -05:00
Alex
15daf36c0d
Remove old allow attribute 2022-01-24 19:30:55 -05:00
Alex
e0ea0eb67a
Merge pull request #33 from sagudev/wave-depth
Fix `WavProperties` reading
2022-01-24 13:57:55 -05:00
sagu
a7155f31a9
Update src/iff/wav/properties.rs
Co-authored-by: Alex <69764315+Serial-ATA@users.noreply.github.com>
2022-01-24 19:24:35 +01:00
Serial
d9174697d3 Fix MP4 audio bitrate 2022-01-24 11:05:12 -05:00
sagu
6325665ab2
Merge branch 'main' into wave-depth 2022-01-24 16:35:24 +01:00
Alex
b4d56ab841
Merge pull request #31 from sagudev/main 2022-01-24 09:11:45 -05:00
sagudev
bd896287b6 bit-depth for ALAC and getter for wav 2022-01-24 06:35:15 +01:00
sagu
504ac31cda
Apply suggestions from code review
Co-authored-by: Alex <69764315+Serial-ATA@users.noreply.github.com>
2022-01-24 06:00:02 +01:00
Serial
81bce69d18 Cleanup 2022-01-23 14:11:16 -05:00
sagudev
e0f075a912 Add testing against hound 2022-01-23 13:37:13 +01:00
sagudev
c8c84e6660 hound testing 2022-01-23 12:32:51 +01:00
sagudev
81efcb0271 bit_depth for iff and ape 2022-01-23 07:35:24 +01:00
sagudev
9deb7f27f0 fix flac bit depth 2022-01-22 21:28:09 +01:00
sagudev
29378f53a5 bit_depth prototype 2022-01-22 19:54:42 +01:00
Alex
d034782a27
Fix test assertion 2022-01-22 11:01:27 -05:00
localthomas
b9c469173a negative multiply made more readable 2022-01-21 18:15:05 +01:00
localthomas
a326788819 implemented clippy suggestions 2022-01-21 17:42:01 +01:00
localthomas
e1a8e08a3f return type of guess_inner is now std::io::Result 2022-01-21 17:34:49 +01:00
localthomas
134d91d61a refactor after code review 2022-01-21 17:31:14 +01:00
localthomas
47a28402db
added frame sync search for MP3 reading
The first MP3 frame behind metadata blocks is found by searching for frame sync bits.
This skips junk bytes between any metadata blocks and the first MP3 frame.
2022-01-21 14:52:32 +01:00
localthomas
0e8ad5759c
added searching for frame sync bits when file type probing
When a file contains an ID3 block, the following data might be an MP3 frame.
The frame might be prepended by junk bytes, which are skipped with this commit.
2022-01-21 13:55:28 +01:00
Serial
c27264f50b
Verify ID3 Frame contents prior to writing 2022-01-13 14:42:34 -05:00
Serial
cefc383123 Fix some doc comments 2022-01-09 09:57:43 -05:00
Serial
42688daee8 Fix feature issues 2022-01-08 11:22:38 -05:00
Serial
a82621dfe7 Cleanup ID3 find functions 2022-01-08 11:06:11 -05:00
Serial
1824c086e4 Cleanup id3::v2 2022-01-08 08:45:27 -05:00
Serial
f42dfb50bf Add ItemKey mappings for new AIFF chunks 2022-01-08 07:42:28 -05:00
Serial
3f0d6d8b00 Update ogg_pager 2022-01-07 13:02:48 -05:00
Serial
5389efa386 Add real world ID3v2 tests for all versions 2022-01-06 21:06:02 -05:00
Serial
8bfca44fb1 Add GeneralEncapsulatedObject tests 2022-01-06 18:15:47 -05:00
Serial
e640eb0d42 Add SynchronizedText tests 2022-01-06 18:00:33 -05:00
Serial
a49a655f55 Add unstable rustfmt options 2022-01-05 13:26:56 -05:00
Serial
cc6d5a9be8 Fix doc comment 2022-01-05 12:54:20 -05:00
Serial
7942a5bd84 Add tests for dump_to 2022-01-05 12:52:29 -05:00
Serial
94e5ed635f Add Tag::dump_to 2022-01-05 12:50:54 -05:00
Serial
9ffa1b4e0d Fix AIFF COMT writing 2022-01-05 12:12:30 -05:00
Serial
ae20700915 Fix AIFF chunk precedence and writing 2022-01-04 22:06:27 -05:00
Serial
6e61f07538 Cleanup chunk reading 2022-01-04 21:38:52 -05:00
Serial
76e788243f Read AIFF COMT chunks 2022-01-04 15:03:24 -05:00
Serial
d49a06888f fmt 2022-01-04 13:07:35 -05:00
Serial
7a036f3ff9 Cleanup AIFF 2022-01-04 13:06:14 -05:00
Serial
8952834bee Add Tag::get_items for specific ItemValues 2022-01-04 13:02:02 -05:00
Serial
a5039e4198 Read AIFF ANNO chunks 2022-01-03 21:15:48 -05:00
Serial
d7872c671e Allow multi-item insertion for Tag, add Tag::take 2022-01-03 21:13:51 -05:00
Serial
77971ef9b0 fmt 2022-01-03 08:52:51 -05:00
Serial
a8e0edc16d Fix OOM in Picture::from_flac_bytes 2022-01-03 08:48:39 -05:00
Serial
010b60b889 Fix MP3 panic, add fuzz targets 2022-01-02 20:53:26 -05:00
Serial
6670ea9cd5 Fix panic 2022-01-02 20:35:29 -05:00
Serial
612a8b062e Preserve track/disc numbers when converting Ilst 2022-01-02 17:12:16 -05:00
Serial
aa1c306f76 Add accessors for ilst int pairs, convert gnre when reading 2022-01-02 16:08:12 -05:00
Serial
075e0e692f Add FileType::primary_tag_type 2021-12-31 14:34:54 -05:00
Serial
b42b423c50 Fix FLAC writing 2021-12-31 09:13:48 -05:00
Serial
bec96a139b Don't allow writing empty items in Vorbis Comments 2021-12-31 02:11:53 -05:00
Serial
dc501c1b62 Merge remote-tracking branch 'origin/main' 2021-12-30 23:20:20 -05:00
Serial
d312f48406 Fix Tag -> Id3v2Tag conversion 2021-12-30 23:20:08 -05:00
Alex
5808d44aa9
Clippy 2021-12-29 22:31:03 -05:00
Alex
27057e5bac
Fix FLAC max size 2021-12-29 22:26:36 -05:00
Serial
6491aadab2 Remove Mp3File::read_properties 2021-12-29 16:57:27 -05:00
Serial
af37013e54 Improve speed of MP3 property reading
This also adds Mp3File::read_properties, which will eventually be added to all files.
2021-12-29 16:36:37 -05:00
Serial
b805af3a0c Add Id3v2Tag::{unsync_text, comments} 2021-12-29 15:20:00 -05:00
Serial
76bfc60c97 fmt 2021-12-24 13:17:48 -05:00
Serial
17f771d8a8 Add some QOL methods 2021-12-24 13:16:27 -05:00
Serial
8021ca924c Finalize docs 2021-12-23 10:00:54 -05:00
Serial
c29b0012ed Fix METADATA_BLOCK_PICTURE parsing/writing 2021-12-22 17:21:15 -05:00
Serial
f7ab03ce47 Fix privacy issue 2021-12-22 10:06:22 -05:00
Serial
8f2f7ba484 Restructure project 2021-12-22 09:49:43 -05:00
Serial
e61f63e63b Finish resolving feature issues 2021-12-21 20:54:16 -05:00
Serial
a7d9deaa14 Make property reading optional 2021-12-21 20:20:24 -05:00
Serial
e5d2c4dc1f Resolve feature issues 2021-12-21 17:28:18 -05:00
Serial
ea0f3007e8 Add tag_writer example 2021-12-20 10:56:32 -05:00
Serial
2273e4608f Add Id3v2Tag::genre 2021-12-20 09:54:01 -05:00
Serial
555a28d5b2 Fix ID3v2 text decoding; Clippy 2021-12-20 09:46:44 -05:00
Serial
9e8a04826b Make tags Clone 2021-12-19 11:32:20 -05:00
Serial
76ee2a55af Do a better job recognizing picture magic signatures 2021-12-19 11:32:02 -05:00
Serial
64362615cf Add simplified getters/setters and tag reader example 2021-12-12 12:47:26 -05:00
Serial
2a0da87074 Support ID3v2 unsynchronisation, add extra ID3v2 tests 2021-12-11 12:24:10 -05:00
Serial
ca0ee7d6b8 Cleanup 2021-12-10 18:43:34 -05:00
Serial
2b4bf99b75 Fix ID3v2 -> Tag conversion, fix docs 2021-12-07 16:35:09 -05:00
Serial
379042cd10 More work on docs 2021-12-06 20:04:22 -05:00
Serial
12451b2df9 Continue working on docs 2021-12-06 07:18:07 -05:00
Serial
175ff1de0b Clippy 2021-12-05 18:11:13 -05:00
Serial
45fd0c7ed9 Start documentation 2021-12-05 18:05:14 -05:00
Serial
733710f8ca Overhaul Probe 2021-12-05 17:02:22 -05:00
Serial
afdfc09873 Reorganize file tests 2021-12-01 21:00:12 -05:00
Serial
c72857c3d7 Add tag conversion tests 2021-11-28 12:55:11 -05:00
Serial
5638326ff2 Add tests for reading individual tag formats 2021-11-27 13:28:40 -05:00
Serial
f7bb543f36 Fix docs 2021-11-26 15:33:28 -05:00
Serial
60e1579bb2 Add overall bitrate, create file property tests 2021-11-26 15:17:02 -05:00
Serial
72641e2f25 Add missing picture preservation 2021-11-26 07:08:55 -05:00
Serial
20a596b80b Preserve pictures in Tag -> Id3v2Tag 2021-11-26 06:56:19 -05:00
Serial
75767fa99e Fix Frame equality and documentation 2021-11-26 06:49:15 -05:00
Serial
db1c8726c2 Remove ItemValue::UInt 2021-11-26 06:17:32 -05:00
Serial
49b49a5254 Make the original version accessible for Id3v2Tag 2021-11-26 05:56:29 -05:00
Serial
a47e3fc1e3 Create LanguageFrames in Tag -> Id3v2Tag 2021-11-24 18:09:45 -05:00
Serial
c0d130512b Remove references to pictures module 2021-11-24 17:09:12 -05:00
Serial
8b8e8eedbb Remove pictures module 2021-11-24 17:03:53 -05:00
Serial
4d7d1d43bd Fix ID3v2 restrictions docs 2021-11-24 16:56:31 -05:00
Serial
41ddc51bd4 Simplify structure, start improving documentation 2021-11-24 16:51:35 -05:00
Serial
39aec03a1e fmt 2021-11-24 15:34:12 -05:00
Serial
99f1c5cf8d Add rough ItemValue::UInt 2021-11-24 15:32:32 -05:00
Serial
eba7efc013 Add tests for Picture -> bytes methods 2021-11-23 19:29:07 -05:00
Serial
a8a6b27ff9 Add tests for format specific Picture parsers 2021-11-23 18:54:57 -05:00
Serial
1113e711ba Add Picture::from_reader, remove Picture::new 2021-11-23 12:41:57 -05:00
Serial
37806ec612 Start documenting pictures.rs 2021-11-23 11:26:08 -05:00
Serial
c527716a8e fmt 2021-11-22 19:28:08 -05:00
Serial
9878e89b33 Add PictureInformation tests 2021-11-22 17:14:02 -05:00
Serial
bae894ccef Add PictureInformation parsing for PNG and JPEG, remove PictureInformation from Picture 2021-11-22 08:31:54 -05:00
Serial
34b6cd9179 Write APE tag's read_only flag 2021-11-22 06:26:22 -05:00
Serial
b6ec17671e fmt 2021-11-22 05:14:29 -05:00
Serial
ee6584d776 Further cleanup chunk reading 2021-11-22 04:33:58 -05:00
Serial
667d0e3bbf Cleanup chunk reading 2021-11-22 04:24:07 -05:00
Serial
4a5bfe4637 Remove TextEncoding from Picture 2021-11-21 16:30:03 -05:00
Serial
bc0c246dbf Add format specific tag structs
This allows for the use of format-specific elements, such as ID3v2 frame headers
2021-11-21 15:18:19 -05:00
Serial
e84731c375 Add format specific audio property structs 2021-10-01 19:30:51 -04:00
Serial
11d4d55dc8 Add Tag::remove_from, get_string, and get_binary 2021-10-01 17:59:53 -04:00
Serial
c2b76462ff Add ID3v2 writing 2021-09-26 22:36:20 -04:00
Serial
8bf22a0115 Fix ID3v2.2 reading, cleanup MPEG header reading 2021-09-19 14:48:35 -04:00
Serial
47f67e019a Break up logic::id3::v1, improve doc comments 2021-09-18 12:22:24 -04:00
Serial
2a88cdf42a Restructure logic::id3 2021-09-18 11:38:26 -04:00
Serial
cb2cb599e9 Add an as_bytes method for GeneralEncapsulatedObject, SynchronizedText, and TagRestrictions 2021-09-18 11:17:25 -04:00
Serial
7c730a27fa Add function for synchsafe integers 2021-09-18 10:47:28 -04:00
Serial
65b51def6d Remove TagFlags::extended_header, fix doc comments 2021-09-18 10:45:42 -04:00
Serial
cec3fd2451 Preserve read only items when using checked insertion 2021-09-13 18:53:18 -04:00
Serial
556aaea287 Leave GEOB/SYLT parsing up to the user, fix docs 2021-09-13 18:35:20 -04:00
Serial
ffba428c98 Fix freeform reading, remove old probe function 2021-09-13 17:39:32 -04:00
Serial
58354679c5 Move TagItem structs out of types::tag 2021-09-13 17:08:16 -04:00
Serial
12fc701e1d No longer require version specification for TagType::Id3v2 2021-09-13 16:55:32 -04:00
Serial
adb8db9dde Add mutable getter methods for all file tags 2021-09-07 01:46:42 -04:00
Serial
4394d9bf8f Remove all allow dead_code 2021-09-07 01:14:36 -04:00
Serial
2e9392196c Add MP4 ilst writing 2021-09-07 01:09:16 -04:00
Serial
07f9724e4e Cleanup tests, fix RIFF INFO reading 2021-09-06 10:41:24 -04:00
Serial
6edee49207 Remove thiserror 2021-09-05 19:22:29 -04:00
Serial
daf24ed2cc Add APE tag writing 2021-09-05 18:48:51 -04:00
Serial
469077598d More derives on public types 2021-09-05 18:44:53 -04:00
Serial
b38cd09ad6 Fix file signature reading 2021-09-05 18:43:48 -04:00
Serial
4e625f7e80 Add ID3v1 writing 2021-09-05 18:41:53 -04:00
Serial
92475b74cf Make file struct tag fields feature dependent 2021-09-05 15:09:13 -04:00
Serial
9c599f2aa9 Cleanup 2021-09-05 14:58:51 -04:00
Serial
7aa96ad0bb Add back RIFF INFO writing 2021-09-05 14:15:15 -04:00
Serial
3eeb08f50a Restructure iff module, cleanup 2021-09-04 21:18:11 -04:00
Serial
4dc0a824ca Add back FLAC writing, restructure ogg module 2021-09-04 20:55:01 -04:00
Serial
4dc0ea8d13 Add AIFF text chunk writing 2021-09-03 16:30:10 -04:00
Serial
351684caec Add TaggedFile::tag and TaggedFile::tag_mut for fetching specific TagTypes 2021-09-03 16:08:39 -04:00
Serial
fd1984b844 Add back OGG Opus/Vorbis writing 2021-09-03 15:37:37 -04:00
Serial
bf703e474d Remove old dependencies 2021-09-02 20:12:14 -04:00
Serial
77278111a1 Update test assets, remove old tests 2021-09-02 20:07:44 -04:00
Serial
cb785ddf95 Add MP4 property reading 2021-09-02 20:01:40 -04:00
Serial
fafda6243d Start work to parse mp4 atoms 2021-09-01 17:23:50 -04:00
Serial
fa97d27eb1 Preserve vendor string on VorbisFile/OpusFile -> TaggedFile conversion 2021-08-28 20:34:12 -04:00
Serial
575d7af692 Put ID3v2 tag restrictions behind a feature, cleanup 2021-08-28 20:11:37 -04:00
Serial
98ab6d4bce fmt 2021-08-24 23:38:56 -04:00
Serial
2c3a041807 Clippy 2021-08-24 23:35:28 -04:00
Serial
b6aa1595e5 Add AiffText keys 2021-08-24 23:30:15 -04:00
Serial
706a61383d Switch from Into to From 2021-08-24 23:10:11 -04:00
Serial
92cb9d51ba Add ID3v2 reading 2021-08-24 22:54:06 -04:00
Serial
0bd0929716 Reimplement read only for APEv2 2021-08-24 22:50:12 -04:00
Serial
fcc63ce0b4 Fix APEv2 reading 2021-08-24 22:46:16 -04:00
Serial
3c0f5e19be Add Debug to more structs 2021-08-24 22:45:37 -04:00
Serial
1d5896ed27 Add flags to Tag 2021-08-24 22:00:33 -04:00
Serial
0c41b3e15e Add ID3v2 tag flags and restrictions 2021-08-24 21:56:46 -04:00
Serial
c5a1af5ccd Move TextEncoding out of picture.rs 2021-08-24 21:53:48 -04:00
Serial
d6466388ac Update synchronized text error, clippy + fmt 2021-08-24 21:47:46 -04:00
Serial
7fd326b327 Update error.rs 2021-08-24 21:44:46 -04:00
Serial
ebc85cd207 Document AudioFile trait 2021-08-24 21:43:24 -04:00
Serial
449ed3b7db Clippy 2021-08-24 21:42:34 -04:00
Serial
1413afd4ff Document ID3v2 issues and workarounds 2021-08-23 23:28:49 -04:00
Serial
d3f6bda1d0 Add support for item flags, add Tag::find 2021-08-23 23:28:00 -04:00
Serial
fc843dd943 Update error.rs 2021-08-23 23:25:06 -04:00
Serial
96c907874a Allow storing an Id3v2Frame in an ItemKey 2021-08-23 23:24:25 -04:00
Serial
1d6fdb3600 Add Id3v2Frame enum, remove old files 2021-08-23 23:23:29 -04:00
Serial
5995115943 Add GEOB frame parsing, separate SYLT information to a separate struct 2021-08-23 23:21:38 -04:00
Serial
c2e0c223e7 Cleanup 2021-08-23 23:20:06 -04:00
Serial
984cbb83e5 Base64 encode FLAC pictures 2021-08-23 05:34:50 -04:00
Serial
91f3d841ab Add de/encoding for ID3v2 synchronized text 2021-08-23 01:43:12 -04:00
Serial
40692dbdd7 Add Tag::insert_item_unchecked 2021-08-22 21:48:52 -04:00
Serial
302db92ad8 Finish tag key mappings 2021-08-22 21:00:19 -04:00
Serial
40a7538804 Document and expose ID3v2 key upgrade functions 2021-08-22 20:38:10 -04:00
Serial
c3a0c28751 Add functions to upgrade ID3v2.2/3 to 2.4 2021-08-22 19:02:28 -04:00
Serial
b8ee9457b1 Update tables 2021-08-19 18:48:41 -04:00
Serial
97253ef487 Fix extensions 2021-08-19 18:26:58 -04:00
Serial
cdc6a33298 Fix visibility and getter methods 2021-08-19 18:14:23 -04:00
Serial
57b35b268d Update docs 2021-08-19 18:02:24 -04:00
Serial
dab1fcb01b Add getters/setters for common tag items 2021-08-19 18:01:53 -04:00
Serial
e893670f35 Add property and file type getters for TaggedFile 2021-08-19 17:59:24 -04:00
Serial
8bd2fbfa65 Add TaggedFile methods to cover the majority of use cases 2021-08-19 16:19:51 -04:00
Serial
711702b504 Add Tag::re_map 2021-08-19 15:21:39 -04:00
Serial
7b7e949b38 Restructure 2021-08-19 15:16:00 -04:00
Serial
4d4341feaf Correct Probe methods 2021-08-19 15:07:40 -04:00
Serial
b856cd1e9c Update id3 module 2021-08-19 14:29:09 -04:00
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
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
0a7b327c03 Update tags
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-06-26 15:35:39 -04:00
Serial
730ce2ff6a Separate flac
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-06-26 15:33:17 -04:00
Serial
5dd38003d6 Separate Riff
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-06-26 15:32:51 -04:00
Serial
1448d8cca9 Fix modules missing feature conditions
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-06-26 15:06:39 -04:00
Serial
4ebf885eaa Reorder PictureType methods, fix Album comment
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-06-26 14:48:47 -04:00
Serial
ca0c03ddf1 Cleanup errors, add generic read_from_reader function, remove multiple useless File::open calls
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-06-26 14:46:30 -04:00
Serial
ce76d861b6 Less verbose README, fix comments
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-06-20 23:24:59 -04:00
Serial
8a09b90811 Change errors
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-05-25 17:22:53 -04:00
Serial
5f8e114f8e Ape no longer requires filepath
Signed-off-by: Serial <69764315+Serial-ATA@users.noreply.github.com>
2021-05-25 16:44:20 -04:00