Commit Graph

631 Commits

Author SHA1 Message Date
Martchus 5114a3ea08 Treat differently encoded values not necessarily as different
That an automatic conversion happens for different types but not
for different encodings was always a bit odd.

This makes writing tests easier and comparing values within the
tag editor does not rely on choosing a particular encoding.
2019-06-01 23:01:53 +02:00
Martchus a8e20c5ef4 Allow converting the description encoding 2019-06-01 22:57:01 +02:00
Martchus 7885b99f72 Add TagValue::isNull() 2019-06-01 22:55:16 +02:00
Martchus c28ded1bca Allow instantiating TagValue from TimeSpan and DateTime 2019-06-01 22:54:44 +02:00
Martchus f042d216fd Do not completely refuse on UTF-8 in ID3v1
since it is apparently used by some software.

But
* Write at least a BOM so it can be interpreted later
  correctly as UTF-8
* Print a warning
* Keep proposing Latin-1

The tag editor should allow to configure which encoding
is used and whether the BOM is used and which encoding is
assumed when parsing a file.
2019-06-01 22:53:59 +02:00
Martchus a4665456d6 Fix warnings in Id3v2Frame 2019-06-01 22:26:16 +02:00
Martchus 69c72909e8 Fix some Doxygen warnings 2019-06-01 15:07:48 +02:00
Martchus 8c88298fe8 Fix TagValue::operator== if 0 byte contained 2019-06-01 12:33:24 +02:00
Martchus e8bc94906a Apply cmake-format 0.5.1 2019-06-01 12:32:17 +02:00
Martchus 73adf26401 Fix conversion from PositionInSet to integer
Even though there was already a test verifying that it is
not possible.
2019-06-01 12:18:05 +02:00
Martchus b9bc756521 Adapt to workingCopyPathMode() removal 2019-05-11 19:01:16 +02:00
Martchus c17db5f2f6 Apply cmake-format and clang-format 2019-05-04 21:03:09 +02:00
Martchus 3288d49d62 Support 'file://' URLs also when saving 2019-05-04 16:04:37 +02:00
Martchus 7efa7a0d5a Adapt to c++utilities v5 2019-05-04 16:04:21 +02:00
Martchus f687618002 Reduce compiler warnings in Mp4Track code 2019-04-21 18:18:56 +02:00
Martchus bfb460d4fd Preserve empty/zero language in MP4 tracks 2019-04-21 18:15:53 +02:00
Martchus 66895e8e2c Distinguish text and "meta" tracks in MP4 2019-04-19 21:59:46 +02:00
Martchus 48166bde9e Prevent updating tkhd atom to version 1 for compatibility 2019-04-19 21:59:42 +02:00
Martchus 8588edaa2e Write preferably version 0 of mdhd atom for compatibility 2019-04-18 17:56:03 +02:00
Martchus 27d7a182d9 Preserve all child elements within trak element 2019-04-17 17:52:04 +02:00
Martchus ccffe4f1e3 Show children of tref atom 2019-04-16 21:50:00 +02:00
Martchus c09f93c441 Preserve order of atoms within moov tree
Maybe it helps with https://github.com/Martchus/tageditor/issues/45
2019-04-16 21:49:16 +02:00
Martchus da15530f53 Remove obsolete code 2019-04-16 21:49:16 +02:00
Martchus f494420da7 Show children of gmhd atom 2019-04-15 18:21:42 +02:00
Martchus 2d306b1a5f Preserve all children of minf atom
See https://github.com/Martchus/tageditor/issues/45
2019-04-15 18:21:33 +02:00
Martchus 2772a0c1ad Add MP4 testfile with chapters
See https://github.com/Martchus/tageditor/issues/45
2019-03-28 17:54:18 +01:00
Martchus d812e0d3ae Detect VobSub within MP4 2019-03-10 16:40:51 +01:00
Martchus 0452b42bfc Add MediaFileInfo::overallAverageBitrate() 2019-03-10 16:31:47 +01:00
Martchus bd7d5b00d7 Use noexcept directly 2019-02-17 17:14:07 +01:00
Martchus 296e5d11b6 Fix TagValue::toStandardGenreIndex() for empty genre index 2019-02-14 18:18:54 +01:00
Martchus dbce74444a Deprecate unused methods in Id3v2Frame 2019-02-13 21:44:19 +01:00
Martchus e93a7c53b3 Fix warnings in ID3v2Frame 2019-02-13 21:43:56 +01:00
Martchus 3d3bc94e39 Prevent warning "Cannot make an empty frame" 2019-02-13 20:19:46 +01:00
Martchus 3a35ce4b16 Don't treat synchronized lyrics as regular text field 2019-02-13 19:06:35 +01:00
Martchus 5140b76f08 Treat 255 as empty ID3v1 genre index 2019-02-13 18:56:03 +01:00
Martchus 97c1a2100d Apply cmake-format 2019-02-06 18:04:33 +01:00
Martchus da64d455d9 Let CMake generate code for test application 2019-01-13 22:28:26 +01:00
Martchus 602f4f7c8f Improve refs in "Adding new fields" doc 2019-01-10 13:37:13 +01:00
Martchus 1e376f54c3 Document adding new fields
It is an easy task but it is also easy to forget something.
2019-01-05 16:55:28 +01:00
Martchus 8be8355539 Update lastKnownField to fully support album artist 2019-01-05 16:54:06 +01:00
Martchus 59d2156165 Add tagType and tagName to OggVorbisComment 2019-01-02 17:08:29 +01:00
Martchus 3c06590085 Detect float PCM in WAVE container 2019-01-01 23:47:27 +01:00
Martchus 6afcd0f8d3 Support album artist and fix/improve grouping 2019-01-01 23:47:18 +01:00
Martchus f1382bd286 Make message about empty frames only a warning
Empty frames don't cause any trouble in general. They only
*might* indicate that something went wrong.
2018-11-15 22:09:10 +01:00
Martchus a775ee61a2 Remove debug messages that the padding has been reached
This is true for most MP3 files and therefore not really helpful.
2018-11-15 22:07:07 +01:00
Martchus e9526225ea Add testfile for AV1 in MP4
Requires at least ffmpeg 4.1
2018-11-08 14:32:25 +01:00
Martchus 0024d5e115 Make message about parsing AV1 config not supported an info
rather than a critical error
2018-11-08 14:31:35 +01:00
Martchus 438efdedbf Use rmdir() rather than remove() to delete dir 2018-11-02 23:07:50 +01:00
Martchus b7a5683211 Fix compiling tests for 32-bit 2018-11-01 23:25:33 +01:00
Martchus 969828e181 Fix compiling tests for Windows 2018-11-01 19:18:00 +01:00