c8b39449c3
Version 1.12
v1.12
2021-02-15 12:23:07 +01:00
bd254654bc
Update documentation for version 1.12.0
2021-02-15 10:37:11 +01:00
fbc3f9bbec
Fix doxygen warnings
2021-02-14 18:20:29 +01:00
99ad01e12f
Fix file name resolver on Windows
...
The change from "fileref: Use user defined resolvers on streams"
does not work with the Windows FileName implementation, and
TestFileRef::testFileResolver fails.
2021-02-14 18:20:29 +01:00
83aa01c6af
Ogg: Set granule position to -1 if no packets finish on page ( #864 )
2021-02-14 10:04:03 +01:00
4c14571647
Update version to 1.12.0
v1.12-beta-2
2021-01-23 09:15:32 +01:00
f4b476a620
Add more unit tests
2021-01-18 20:31:52 +01:00
f8d78a61f7
Merge pull request #990 from ufleisch/ufleisch/more-tests
...
More unit tests and bug fixes
2021-01-12 18:07:23 +01:00
cf6c68bafc
Support a consistent set of MusicBrainz properties where possible
...
The support for MusicBrainz properties is enhanced with "ARTISTS", "ASIN",
"RELEASECOUNTRY", "RELEASESTATUS", "RELEASETYPE", "MUSICBRAINZ_RELEASETRACKID",
"ORIGINALDATE" on APE, ASF, MP4, ID3v2, and Xiph tags.
2021-01-10 15:19:10 +01:00
f7c24930cd
Add missing iTunes properties for MP4 tags
2021-01-10 15:18:59 +01:00
310c3bc043
Add missing 'COMPOSERSORT' property for ID3v2 tags
2021-01-10 15:18:43 +01:00
e6c03c6de8
Create an APE tag when reading a WavPack file without tags
...
Now it is handled in the same way as for other tags with a
TagUnion. Without this patch, WavPack files without tags cannot
be edited via a FileRef.
2021-01-03 19:06:59 +01:00
2c29fbeabb
Use mapped roles instead of property keys for TIPL roles
...
For an ID3v2 "DJMIXER" property, the "DJ-MIX" TIPL role must be used.
For an ID3v2 "MIXER" property, the "MIX" TIPL role must be used.
Otherwise it will not work when reading the tag and creating
properties from the wrong TIPL roles.
2021-01-03 19:06:59 +01:00
4828a3b925
Do not crash when removing non existing TableOfContentsFrame child
2021-01-03 19:06:59 +01:00
794a2a0b2b
Correctly construct PrivateFrame from frame data
...
Frame::setData() has to be used instead of PrivateFrame::setData().
2021-01-03 19:06:59 +01:00
f32d27973f
Use PCST and not TXXX:PODCAST frame for ID3v2 'PODCAST' property
2021-01-03 19:06:59 +01:00
f74b166435
Add missing extensions to FileRef::defaultFileExtensions()
2021-01-03 19:06:59 +01:00
c28dc78060
Add more unit tests
...
This not only increased the test coverage but also revealed some
bugs which are fixed in the following commits.
2021-01-03 19:06:59 +01:00
89fb62cfb1
Update NEWS
2021-01-02 10:50:52 +01:00
59a2994f4e
Fix spelling and typos
2021-01-02 10:50:52 +01:00
f3bdd416da
Remove some DSF and DSDIFF leftovers
...
These can be merged back into master from the branch
add_dsf_and_dsdiff_file_formats.
2021-01-02 10:50:52 +01:00
39f86d02e7
Merge pull request #989 from ufleisch/ufleisch/id3v2-genres
...
Correctly read and write multiple ID3v2.3.0 genres (#988 )
2021-01-01 11:48:35 +01:00
1a2e1d08ac
Merge pull request #986 from ufleisch/ufleisch/wav-extensible-subformat
...
WAV: Support subformat in WAVE_FORMAT_EXTENSIBLE (#850 )
2021-01-01 11:48:06 +01:00
3f3b48353c
Merge pull request #983 from ufleisch/ufleisch/flac-comment-before-picture
...
FLAC: Store comment block before picture block (#954 )
2021-01-01 11:45:14 +01:00
54f5c66b65
Merge pull request #981 from ufleisch/ufleisch/alac-without-bitrate
...
Calculate bitrate for ALAC files without it (#961 )
2021-01-01 11:45:12 +01:00
3749dd7b75
Write ID3v2.3 genres with multiple references to ID3v1 genres ( #988 )
...
As described in id3v2.3.0.txt (4.2.1, TCON), multiple genres are
only possible as references to ID3v1 genres with an optional
refinement as a text. When downgrading multiple genres from
ID3v2.4.0, they are now converted to numbers when possible and
the first genre text without ID3v1 reference is added as a
refinement. The keywords RX and CR are supported too.
2020-12-30 17:38:04 +01:00
d602ae483e
Read ID3v2.3 genres with multiple references to ID3v1 genres ( #988 )
...
As described in id3v2.3.0.txt (4.2.1, TCON), now multiple genres
are possible, e.g. "(51)(39)". Additionally, support the keywords
RX and CR.
2020-12-30 17:37:54 +01:00
5374cb1ac4
Merge pull request #980 from ufleisch/ufleisch/wav-float-without-fact
...
Calculate bitrate for IEEE Float WAV files without fact chunk (#959 )
2020-12-28 09:16:44 +01:00
8a461ccedc
Merge pull request #978 from ufleisch/ufleisch/wavs-with-garbage
...
Accept WAV files with garbage appended (#973 )
2020-12-28 09:07:39 +01:00
17c2220588
Merge pull request #963 from dbry/wavpack-fixes
...
WavPack fixes with test file verifying issue #962
2020-12-28 09:07:37 +01:00
271c004b30
Merge pull request #942 from uqs/master
...
Fix spelling of Bebop and update Fusion and Hardcore to match Wikipedia
2020-12-28 09:07:34 +01:00
25d9bd1814
Merge pull request #935 from jiblime/static-config
...
taglib-config.cmake has static libdir and includedir variables
2020-12-28 09:07:32 +01:00
b0bb7f8c0f
Merge pull request #888 from chouquette/use_resolvers_on_streams
...
fileref: Use user defined resolvers on streams
2020-12-28 09:07:30 +01:00
4d3ab73d2e
Merge pull request #855 from shaforostoff/broken_mp3
...
fix reading audioproperties for broken mp3 files
2020-12-28 09:05:31 +01:00
ae867cbd8c
ID3v1: Improve compatibility by mapping renamed genre names to codes
...
Also added a test to check if the renamed genre names are used and
check if using the old names still works.
2020-12-27 19:53:11 +01:00
563fbaf82a
Handle the case when MP4 file header has zero bitrate
...
This incorporates [6ca536b5
] (mp4 properties: handle the case when
mp4 file header has zero bitrate) from PR #899 with a more accurate
bitrate calculation and a unit test.
2020-12-27 10:17:34 +01:00
e5ad041e42
A few more corrections to genre names
2020-12-24 10:08:47 +01:00
9ca7b0c33a
fileref: Use user defined resolvers on streams
...
Since the resolve only use the filename, there is no reason not to probe
them, as a filename might be available through the IOStream interface.
When using a ByteVectorStream, the filename will be empty and user
defined resolvers won't be probed.
2020-12-23 12:34:54 +01:00
a00b3499b4
WavPack: Add test with non-standard sample rate
2020-12-23 07:04:51 +01:00
d84e86da9c
Clean up code to better match the TagLib style
2020-12-23 07:04:51 +01:00
741ed4e4bf
Add test for IEEE Float WAV file without fact chunk
2020-12-22 16:02:01 +01:00
e4813f4996
Calculate bitrate for IEEE Float WAV files without fact chunk ( #959 )
...
When a WAV file with float format without a fact chunk containing
a totalSamples value is encountered, the bitrate is not calculated.
However, since all samples have the same number of bits, the
number of samples can be calculated from the size of the data chunk
and number of channels and bits per sample, as it is done in the
PCM case.
2020-12-22 15:46:48 +01:00
1332d44ff6
WAV: Test properties of file with WAVE_FORMAT_EXTENSIBLE
...
uint8we.wav: http://www-mmsp.ece.mcgill.ca/Documents/AudioFormats/WAVE/Samples/AFsp/M1F1-uint8WE-AFsp.wav
2020-12-21 15:42:13 +01:00
3d71ea1ad2
ALAC: Test properties of file without bitrate
2020-12-21 13:31:24 +01:00
02c8995273
Calculate bitrate for ALAC files without it ( #961 )
...
If the "alac" atom of an MP4 file has a zero bitrate, it is calculated.
2020-12-21 12:22:25 +01:00
7e92af6e8b
FLAC: Test if picture is stored after comment
2020-12-21 11:46:10 +01:00
7ec1127f3e
FLAC: Store comment block before picture block ( #954 )
...
When the picture block is large and comes before the comment block,
Windows will no longer display the tags. This can be fixed by
storing the comment block before the picture block instead of
appending it at the end.
2020-12-21 11:09:15 +01:00
30d839538d
Make PlainFile available to all tests
2020-12-21 08:44:32 +01:00
8f6b6ac055
Don't pull in C++11+ for one class
2020-12-20 18:38:05 +01:00
a5f11697f7
Get things building again with C++98
2020-12-20 18:12:14 +01:00