Commit graph

1544 commits

Author SHA1 Message Date
Uwe Klotz
ca898172c2 id3v2: Fix set_comment()
Only keep a single comment frame to avoid unexpected behavior.
2023-02-19 19:48:47 -05:00
Uwe Klotz
15f81bb48b id3v2: Use set_comment() instead of inserting a frame manually 2023-02-19 19:48:47 -05:00
Uwe Klotz
206ffd2e0b id3v2: Avoid ItemKey -> FrameID conversion 2023-02-19 19:48:47 -05:00
Uwe Klotz
3f751f3c38 id3v2/mp4/ogg: Add tests for multi-valued item conversion 2023-02-19 19:48:47 -05:00
Serial
e14c62bf75 misc: Remove cfg-if dependency 2023-02-15 00:22:01 -05:00
Serial
149229fd2b ID3v2: Remove unnecessary clone in FrameRef creation 2023-02-11 13:32:08 -05:00
Serial
1d2dbb6b35 ID3v2: Fix conversion of user defined frames when using Tag writing interface
fixes #140
2023-02-11 13:32:08 -05:00
Uwe Klotz
0a77f479ae More robust year parsing without allocations
Signed-off-by: Uwe Klotz <uwe.klotz@gmail.com>
2023-02-11 01:38:25 -05:00
Uwe Klotz
b07adbed33 Use Seek::rewind() in tests 2023-02-02 16:38:28 -05:00
Uwe Klotz
77ed8facbc id3v2: Avoid allocation of FrameID 2023-01-30 17:57:46 -05:00
Uwe Klotz
eb648f4f0d Remove special case handling of empty string values 2023-01-30 17:57:31 -05:00
Serial
be3c0b9ae3
0.11.0 2023-01-29 12:38:51 -05:00
Serial
b435484f88
lofty_attr 0.6.0 2023-01-29 12:36:00 -05:00
Serial
88cecb307d
ogg_pager 0.5.0 2023-01-29 12:32:13 -05:00
Serial
3f9d1b6229
Misc: Fix workflows 2023-01-21 12:11:16 -05:00
Serial
cc30429764
ogg_pager: Make a separate changelog 2023-01-21 11:59:59 -05:00
Serial
e79aa0846a Clippy: Fix needless_pass_by_value 2023-01-21 11:24:09 -05:00
Serial
ec4e66fcbe OGG: Add a test for #130 2023-01-21 11:24:09 -05:00
Serial
87686ace5e OGG: Fix find_last_page 2023-01-21 11:24:09 -05:00
Serial
6e33ca6a4c ogg_pager: Restrict page sizes to 8KB; Fix segment table generation when paginating 2023-01-21 11:24:09 -05:00
Serial
9c69f003ce ogg_pager: Add constants to separate maximum possible page size from written page size 2023-01-21 11:24:09 -05:00
Serial
d1beb78a97 ogg_pager: Store segment table in PageHeader 2023-01-21 11:24:09 -05:00
Serial
54cd6ca49a OGG: Increment audio packet page sequence numbers when writing 2023-01-21 11:24:09 -05:00
Serial
76fca86d1c ogg_pager: Add Packets::{len, is_empty} 2023-01-21 11:24:09 -05:00
Serial
efbd3315e5 ogg_pager: Fix Packets::read_count count check 2023-01-21 11:24:09 -05:00
Serial
9db2cd85d7 ogg_pager: Return number of written pages from Packets::write_to 2023-01-21 11:24:09 -05:00
Serial
b4f22e9a5d OGG: Read appropriate number of header packets 2023-01-21 11:24:09 -05:00
Serial
53df9b4209 ogg_pager: Make operations less fallible 2023-01-21 11:24:09 -05:00
Serial
a201ab33f7
APE/ID3v1: Remove items in setters when given empty value 2023-01-20 21:17:26 -05:00
Uwe Klotz
533cd7dcff Renaming: rejoin -> merge 2023-01-20 08:34:33 -05:00
Uwe Klotz
2132d0171e SplitAndRejoin: Add a read/modify/write usage example 2023-01-20 08:34:33 -05:00
Uwe Klotz
2b562c4a4b Split and rejoin tags for read/modify/write round trips 2023-01-20 08:34:33 -05:00
Uwe Klotz
19fe23cbeb id3v2: Change const fn into const 2023-01-15 11:36:16 -05:00
Uwe Klotz
b2250df119 id3v2: Replace literals with named constants 2023-01-15 11:36:16 -05:00
Uwe Klotz
7d1aab461b id3v2: Filter text frames by empty content descriptor 2023-01-15 11:36:16 -05:00
Uwe Klotz
4ea22ff44b id3v2: Distinguish COMM frames by content descriptor
Plain comments are supposed to have an empty description aka content
descriptor. Only those must appear as ItemKey::Comment.
2023-01-15 11:36:16 -05:00
Uwe Klotz
07606159ec ogg: Add a consuming iterator over all items 2023-01-15 11:35:09 -05:00
Uwe Klotz
751f5ca06f Add conversions between borrowed/owned data 2023-01-15 11:34:46 -05:00
Uwe Klotz
cff5d8fc6b id3v2: Retain frames by predicate 2023-01-15 11:34:29 -05:00
Serial
a769297545
RIFF: Return removed item from RIFFInfoList::remove 2023-01-14 20:31:09 -05:00
Serial
0c7ea31817 RIFF: Support year Accessor methods in RIFFInfoList 2023-01-14 20:27:10 -05:00
Uwe Klotz
06b3b6dbaf mp4: More robust parsing and updated mapping of rtng atom 2023-01-14 20:05:25 -05:00
Uwe Klotz
100b7e21b1 Let Tag::items() return an iterator 2023-01-14 11:45:06 -05:00
Uwe Klotz
31894bedfc Remove IntoIterator impls for Tag due to items/pictures ambiguity 2023-01-14 11:45:06 -05:00
Uwe Klotz
76cddb7719 Add Clone bounds to impl Iterator results 2023-01-14 11:45:06 -05:00
Uwe Klotz
3df98aff12 Add more IntoIterator implementations 2023-01-14 11:45:06 -05:00
Uwe Klotz
0616da11fb Fix and complete work/movement support 2023-01-14 11:41:37 -05:00
Uwe Klotz
d08d76616e id3v2: Handle three-letter language codes consistently 2023-01-14 11:40:18 -05:00
Uwe Klotz
1f3c49e6ac id3v2: Use is_ascii_alphabetic() instead of lowercase + uppercase 2023-01-14 11:40:18 -05:00
Serial
4f31729ae8
ID3v2: Allow uppercase languages in LanguageFrame 2023-01-13 11:52:16 -05:00