Commit Graph

103 Commits

Author SHA1 Message Date
Martchus b4d1df8592 Fix typos found via `codespell --skip .git -w` 2021-07-03 19:38:36 +02:00
Martchus a9f3a607a3 Improve showing IO errors
* Make error messages and dialogs more consistent
* Print the actual error message (which might actually contain something
  useful when NativeFileStream is used)
2021-06-01 22:36:48 +02:00
Martchus 523971ad9d Suppress warning about cover type for ID3v1 tag when also an ID3v2 tag is present 2021-06-01 22:05:07 +02:00
Martchus 7ada28b06e cli: Allow preserving the modification time
See https://github.com/Martchus/tageditor/issues/66
2021-06-01 21:56:23 +02:00
Martchus 3203d4403e Apply clang-format 2021-05-27 18:56:53 +02:00
Martchus 9e0ce80c8c cli: Add --quiet flag to set operation 2021-05-27 18:56:42 +02:00
Martchus 53f0f02c72 Fix handling arbitrary files specified as field values
The container offset must not be used here as it may be garbage if the file
format is not recognized (e.g. if the file is an arbitrary text file).
2021-05-22 23:02:55 +02:00
Martchus 54093af53b Add missing include for std::optional 2021-05-22 22:59:52 +02:00
Martchus 1944773022 Allow setting multiple covers of the same type but different descriptions
The standard actually says that there might be different covers with only
different descriptions:

    Description is a
    short description of the picture, represented as a terminated
    text string. There may be several pictures attached to one file, each
    in their individual "APIC" frame, but only one with the same content
    descriptor. There may only be one picture with the picture type
    declared as picture type $01 and $02 respectively.

I assume "content descriptor" means combination of the type and
description.

This is in accordance with eyeD3.

See https://github.com/Martchus/tageditor/issues/64#issuecomment-833952940
2021-05-10 20:51:15 +02:00
Martchus 41fb2069f3 Allow setting covers of special types with description via CLI
See https://github.com/Martchus/tageditor/issues/64
2021-04-28 00:57:57 +02:00
Martchus d31fd79e87 Adapt to changes in tagparser library 2021-04-23 22:18:30 +02:00
Martchus e535e20720 Fix warnings 2021-03-20 21:59:49 +01:00
Martchus 9fbb375924 Adapt to changes in tagparser (without making actually use of the new API) 2021-02-04 23:22:43 +01:00
Martchus 82d0834e75 Adapt to changes in tagparser 2021-02-02 11:02:30 +01:00
Martchus 670a9a1c91 Adapt to changes in tagparser 2021-01-30 21:57:09 +01:00
Martchus 0a7d05256c Adapt to changes in tagparser v10 2020-12-14 21:19:49 +01:00
Martchus 01daa21305 Use 'RecordDate' instead of 'Year' field, add 'ReleaseDate' field 2020-04-24 23:26:40 +02:00
Martchus d3f84c4c39 Add conversion from ISO-639-2/B codes to language names 2019-08-17 20:58:14 +02:00
Martchus a5224d930d Apply clang-format 2019-08-13 00:35:04 +02:00
Martchus 9a37492a10 Use helper for flag enum class from c++utilities 2019-08-12 20:26:38 +02:00
Martchus 66a45f7578 Adapt to changes in c++utilities 2019-06-12 20:47:44 +02:00
Martchus 66c9250246 Adapt to changes in c++utilities 2019-06-10 22:49:46 +02:00
Martchus 3e7bdb3703 Add track to field to CLI help/completion 2019-05-18 21:50:04 +02:00
Martchus 1691b9daa2 Adapt to c++utilities v5 2019-05-04 16:05:20 +02:00
Martchus f746c1b5ef Show total size, duration and bitrate in CLI 2019-03-10 16:34:04 +01:00
Martchus 1401b13f7f Fix warning when reading cover and use container offset 2019-02-13 21:40:17 +01:00
Martchus 74d05eede9 Fix specifying custom fields
* Fix support for Vorbis comment and add test case
* Consider only fields for the current format
  when displaying tags
2019-01-02 17:12:48 +01:00
Martchus dbc1c79f49 Support album artist and vendor 2019-01-01 23:44:28 +01:00
Martchus 19b2cb0eb3 Show pixel/display size and PAR in CLI 2018-07-28 15:08:54 +02:00
Martchus c9d43c7931 Adapt to tagparser v8 2018-07-10 16:35:50 +02:00
Martchus 0b86408637 Fix specifying track number
The way to specify the track ID for setting meta-data on
track-level conflicted with the way to specify the track
number. The track ID is now specified via 'track-id='.

This breaks the CLI, however I see it as a bug that
'track=' worked for specifying the track ID so it should
be ok.
2018-05-31 00:32:30 +02:00
Martchus 4edeaa1ab2 Support showing unsupported fields when displaying tag info 2018-05-13 00:27:42 +02:00
Martchus 3411ee3eef Apply clang-format 2018-04-29 19:02:42 +02:00
Martchus 4f21442f39 Set writing application 2018-03-20 21:41:42 +01:00
Martchus 97518578b0 Reduce nesting in setTagInfo() 2018-03-13 19:21:12 +01:00
Martchus 1f4a79403e Turn most warnings into fatal errors 2018-03-13 19:20:41 +01:00
Martchus 99ef9643ee Parse everything in displayFileInfo()
Because displaying padding requires parsing the tags for
files with ID3 tags.
2018-03-11 19:05:45 +01:00
Martchus 4f53029a6e Refactor MediaFileInfo::createAppropriateTags() 2018-03-11 18:58:20 +01:00
Martchus 4b7d7a9499 Apply clang-format 2018-03-07 01:18:01 +01:00
Martchus c1a3e53dc9 Move tagparser to namespace TagParser 2018-03-06 23:10:13 +01:00
Martchus c2b2e4ac44 Adapt to new notification handling 2018-03-06 22:43:51 +01:00
Martchus 82ccb9b9f3 cli: Allow to set backup path 2018-02-20 21:36:55 +01:00
Martchus 5320ef0660 cli: Gather notifications also in the error case 2018-02-20 21:36:15 +01:00
Martchus 7848b285b6 Fix some warnings 2018-01-31 21:02:24 +01:00
Martchus 5254e6cdf9 Add --pretty flag to JSON export 2018-01-26 18:09:53 +01:00
Martchus ef08011167 Add #ifdef for JSON export include 2018-01-21 15:27:34 +01:00
Martchus 13d9bbf8d6 Fix include paths for reflective-rapidjson
So the paths match the actual install directory.
2018-01-20 21:16:15 +01:00
Martchus 01e57c86d6 Add JSON export 2018-01-15 01:08:36 +01:00
Martchus d06004d01a cli: Improve help/auto-completion for track attributes 2017-12-05 15:21:59 +01:00
Martchus 02586635b5 Add option to specify time span output format
See https://github.com/Martchus/tageditor/issues/27
2017-11-29 22:57:32 +01:00