Urs Fleisch
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
Urs Fleisch
3d71ea1ad2
ALAC: Test properties of file without bitrate
2020-12-21 13:31:24 +01:00
Urs Fleisch
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
Urs Fleisch
7e92af6e8b
FLAC: Test if picture is stored after comment
2020-12-21 11:46:10 +01:00
Urs Fleisch
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
Urs Fleisch
30d839538d
Make PlainFile available to all tests
2020-12-21 08:44:32 +01:00
Scott Wheeler
8f6b6ac055
Don't pull in C++11+ for one class
2020-12-20 18:38:05 +01:00
Scott Wheeler
a5f11697f7
Get things building again with C++98
2020-12-20 18:12:14 +01:00
Scott Wheeler
1721354627
Explicitly set C98 for this target
...
Sometime I'd like to get the lib over to C++1x, but for now, enforce
the currently in-use standard.
2020-12-20 14:22:20 +00:00
Scott Wheeler
ac7e5303a6
Merge pull request #969 from ujjwalsh/master
...
Adding support for Linux on power
2020-12-20 15:17:40 +01:00
Scott Wheeler
8ba246cdbe
Merge pull request #984 from ufleisch/ufleisch/m4a-empty-strings-remove-items
...
MP4: Remove item when empty string is set (#929 )
2020-12-20 15:13:58 +01:00
Scott Wheeler
6656528f18
Also allow #include <taglib/foo.h> with taglib.pc and friends
...
Closes #495
2020-12-20 14:09:49 +00:00
Urs Fleisch
bad2cea122
WAV: Support subformat in WAVE_FORMAT_EXTENSIBLE ( #850 )
2020-12-20 11:47:04 +01:00
Urs Fleisch
61d5bcfd5b
MP4: Remove item when empty string is set ( #929 )
...
This will make the behavior for MP4 tags compliant to the API
documentation and consistent with other tag formats.
2020-12-13 12:37:20 +01:00
Urs Fleisch
2dd6931eee
Accept WAV files with garbage appended ( #973 )
...
This will allow editing the tags of WAV files which have data
appended at the end. The corresponding unit test checks that the
original contents are still available after editing the metadata
of such files.
2020-12-06 08:56:35 +01:00
Scott Wheeler
91b00b17b2
Missing const here
2020-10-12 16:52:09 +02:00
Scott Wheeler
e116824380
Downgrade numerical genres back to ID3v2.3 format
...
Closes #631
2020-10-12 08:46:51 +02:00
Scott Wheeler
2db13ad8cf
Add a little sanity to the formatting here
2020-10-12 08:36:57 +02:00
ujjwalsh
cd767738fc
adding support for linux on power
2020-09-01 16:55:07 +00:00
David Bryant
43bc11541d
correctly read very high sample rates from WavPack files
2020-07-02 17:22:03 -07:00
David Bryant
6806dc4cf2
make WavPack seekFinalIndex() more robust to false triggers
2020-07-02 16:15:51 -07:00
David Bryant
ec9c49b964
add test for WavPack DSD (issue #962 )
2020-07-01 08:35:20 -07:00
David Bryant
872cafb0b9
Several fixes for WavPack files, including issue #962
...
Fixes to properly handle WavPack files with leading and
trailing non-audio blocks, non-standard sampling rates,
and DSD audio (introduced in WavPack 5).
2020-06-30 22:19:38 -07:00
Scott Wheeler
47342f6974
Prefer COMM frames with no description for setComment()
...
This creates symetry with ID3v2::Tag::comment() in preferring frames with no description
when choosing which COMM frame should be updated. (Previously setComment() simply updated
the first COMM frame.)
Fixes #950
2020-03-27 12:14:51 +01:00
Ulrich Spörlein
5763d042a6
Fix spelling of Bebop and update Fusion and Hardcore to match Wikipedia
...
Source: https://en.wikipedia.org/wiki/List_of_ID3v1_Genres
Similar patches will be sent to libid3tag and ffmpeg to harmonize the
genre names and spellings.
2019-12-19 14:53:57 +01:00
jiblime
cd9e6b7502
Changed libdir/includedir variables to change based on a user's system and match syntax
2019-10-19 15:13:28 -07:00
Scott Wheeler
54508df30b
Needs to be defined to nothing if none of the #if blocks match
2019-09-20 10:32:33 +02:00
Scott Wheeler
dcf0331eb1
Use newer function signatures
2019-09-19 15:23:34 +02:00
Scott Wheeler
96155f35fa
Use new method signatures
2019-09-19 15:19:17 +02:00
Scott Wheeler
ebd3373d6d
Correctly decode signed values
...
In SV7 these are a mix of signed and unsigned shorts; in SV8 they're all
signed. Storing them as an int is fine for signed or unsigned shorts as
it's wide enough to contain either of them.
Unfortunately there are no explicit tests for SV7 at the moment; that
would be ideal to add before the next release.
CC @carewolf
2019-09-12 12:13:24 +02:00
Scott Wheeler
f3ecfa11bb
Completely remove StripAll
from the API
...
I'd imagined it being useful for calls to `strip()`, but it's not
actually used there since that's an OR-ed together set of flags
representing which tags to strip.
2019-09-12 11:19:57 +02:00
Scott Wheeler
7082b9f66b
Unsaved (and incorrect looking) field
2019-09-12 10:46:11 +02:00
Scott Wheeler
de25bc6111
StripAll should be treated as equivalent to StripOthers in save()
2019-09-12 07:57:16 +02:00
Scott Wheeler
074f30e3fa
Remove DSF and DSDIFF from master to a feature branch
...
These can be merged back into master once they're in a more mature state.
2019-09-12 07:55:34 +02:00
Scott Wheeler
f1b40de66b
Unify File::save(...) APIs between file formats that support ID3v2
...
Closes #922
2019-09-11 06:48:27 +02:00
Scott Wheeler
0b99cd9bac
Revert switch to other static size method
...
This was based on a misread of the header: at present there is no
non-static size() method, so removing the argument makes the behavior
incorrect.
2019-09-11 00:58:18 +02:00
Scott Wheeler
4668cf0f93
Missing header that should have been added in b8dc105
2019-09-11 00:42:15 +02:00
Scott Wheeler
c05fa78406
Mark deprected methods and remove internal usage
...
This does not put the deprecated marker on methods that will or could resolve
to the same overload, e.g.:
void foo(bool bar = true); // <-- not marked
void foo(Bar bar) // <-- since this will have a default argument in the new version
2019-09-11 00:39:37 +02:00
Scott Wheeler
b8dc105ae3
Deprecate calls to MPEG::File::save(...) that use boolean params
...
This uses explicit enums for e.g. the ID3v2 version, making calls more
readable:
file.save(ID3v1 | ID3v2, StripOthers, ID3v2::v4, Duplicate);
Instead of:
file.save(ID3v1 | ID3v2, true, 4, true);
Needs to be ported to other types, per #922
2019-09-10 22:59:07 +02:00
Scott Wheeler
fced0f46e9
Add docs for this method
2019-09-10 13:31:44 +02:00
Scott Wheeler
dc0f667a4c
No tabs in TagLib
2019-09-10 13:08:11 +02:00
Scott Wheeler
085180e9a4
Require at least CMake 3
2019-09-10 12:45:36 +02:00
Scott Wheeler
ef1312d622
Add -lz to taglib.pc and taglib-config when built with zlib
...
Closes #872
2019-09-10 12:41:11 +02:00
StefanBruens
86c0428475
Clear valid flag for invalid Speex files
...
This matches the corresponding code in vorbisfile.cpp, opusfile.cpp and flagfile.cpp, and fixes taglib/taglib#902 .
2019-09-10 11:44:21 +02:00
Scott Wheeler
3c78c4cfc9
Merge pull request #883 from ufleisch/riff-padding
...
Do not ignore non zero RIFF padding if leading to parse error (#882 )
2019-09-10 11:25:46 +02:00
Scott Wheeler
c8bb6271e5
Merge pull request #917 from ufleisch/ogg-bitrate
...
Calculate Ogg bitrate without comment size (#874 )
2019-09-10 11:14:15 +02:00
Scott Wheeler
84f7462526
Tests need C++11
2019-09-05 17:29:40 +02:00
Urs Fleisch
2f23892182
Calculate Ogg bitrate without overhead size ( #874 )
2019-09-02 22:14:41 +02:00
Scott Wheeler
2918602ad0
Merge pull request #910 from joerg-krause/patch-1
...
Drop CMAKE_SYSROOT from taglib-config
2019-08-26 23:37:24 +02:00
Scott Wheeler
c146cd7e92
Merge pull request #909 from williamjcm/patch-1
...
Make TagLib seach in its source dir for utf8-cpp.
2019-08-26 23:34:47 +02:00