Commit Graph

279 Commits

Author SHA1 Message Date
Martijn van Beurden 2ab4677750
Release FLAC 1.4.0 2022-09-09 14:08:42 +02:00
Martijn van Beurden a6de25bbb6
Update ABI check 2022-08-30 22:01:11 +02:00
Martijn van Beurden cd031fb7a9
Add ABI check to CI
This adds a dump of current ABIs (which will probably be released
as 1.4.0) to the test directory, and adds a comparison to current
ABIs to the distcheck
2022-08-22 16:07:25 +02:00
Martijn van Beurden 35306a812b
Introduce subdivide_tukey apodization
Subdivide_tukey is intended to replace partial_tukey and
punchout_tukey. It works in rougly the same way, but uses a more
efficient algorithm, recyling more data.

subdivide_tukey has 2 arguments, of which 1 is optional. The
first states the maximum number of parts the signal has to be
split up in, the second is the tukey parameter, divided by the
max num of parts.

subdivide_tukey(3) analyses audio with an unsplit block, with the
block split in 2 and split in 3. Here the default p of 0.5 applies
to the smallest parts, so the unsplit block effectively has a p of
0.5/3. subdivide_tukey(3/2e-1) does the same but with p of 0.2.
2022-08-19 20:56:24 +02:00
Martijn van Beurden 10d7ce268b Bulk update copyright dates to 2022 2022-07-26 16:23:07 +02:00
Martijn van Beurden a15ae334c9 Add 32-bit files to test 2022-06-12 18:38:21 +02:00
Martijn van Beurden dd4a263406 Remove Makefile.lite build system 2022-05-27 21:59:32 +02:00
Martijn van Beurden 1bb80c18da Small make distcheck fixes 2022-05-27 21:59:32 +02:00
Rosen Penev 2b4ba6013e
tests: Run through shellcheck (#134)
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2022-05-18 21:27:19 +02:00
Martijn van Beurden 61649d09aa
Add checks for decoding from and encoding to UTF-8 filenames 2022-05-12 22:21:39 +02:00
Martijn van Beurden d9554fb7c9 Add --limit-min-bitrate to flac and add test for it 2022-05-02 07:59:01 +02:00
Martijn van Beurden 1793632ee6
Rework error handling (#283)
This commit reworks the code decoding a frame, to add silence when
frames are missing and output silence when something other than the
frame header seems corrupted. Tests are added to the test suite for
this functionality. Also, decoded values are checked to be within bps
2022-04-27 12:16:15 +02:00
Martijn van Beurden f579b163fe
Add git commit tag, hash and date to vendor string when available
In some circles (Hydrogenaud.io for example) people share binaries
compiled from git, i.e. inbetween official releases. Files created
with these binaries cannot be discerned from others. To improve
troubleshooting, compiles from a git repository are marked with
the commit hash and date when configured with autotools or CMake
2022-04-20 21:47:07 +02:00
Martijn van Beurden 7385dac383
Fix overflow of streaminfo total samples (github issue 237)
When writing a FLAC file with over 2^36 samples, the total samples
entry in streaminfo will overflow and wrap around. Setting it to 0
(which means unknown number of samples) makes sure the decoder
doesn't rely on this number

Co-authored-by: Ralph Giles <giles@thaumas.net>
2022-04-19 17:45:22 +02:00
Martijn van Beurden ce31a1d51f [CMake] Enable testing through busybox
With this commit, it is possible to run the full test suite on
Windows machines when busybox-w32 is installed. This program is
available through chocolatey with 'choco install busybox'

CMake tests for availability of busybox and use if available. As
chocolatey is the preferred method of fetching software for
Github actions, this commit paves the way for running the full
test suite on Windows for CI
2022-04-13 17:37:50 +02:00
Silent 179cdce1db cmake: Fix tests with BUILD_CXXLIBS or BUILD_PROGRAMS off
Fixes a regression introduced in 10797d5896
2022-04-13 07:35:33 +02:00
Ralph Giles 22816c6c1b
Set release date for 1.3.4.
This is a target date, but it's a nice round number if we're able
to make it work.

Signed-off-by: Ralph Giles <giles@thaumas.net>
2022-02-20 20:54:20 -08:00
Martijn van Beurden e75495be3d
Change version to 1.3.4 and add placeholders for release date
Signed-off-by: Ralph Giles <giles@thaumas.net>
2022-02-20 20:54:19 -08:00
Ralph Giles 10797d5896 cmake: add some simple tests on windows platforms.
The main test harnesses are written in unix shell script, so
they don't work on windows. A stanza was added to the cmake
config to skip all tests there to get a green build.

This is misleading, since no testing was done at all on Windows.

Instead, construct a separate set of tests on non-unix platforms,
calling the two api test programs, which of necessity are
compiled executables. Also invoke the two front-end programs
with just the --help switch to verify they at least start.

Thanks to Marcus Asteborg for the suggestion.
2021-07-11 13:53:07 -07:00
Erik de Castro Lopo 6d0e222a6e Make sure CMake build files end up in release tarball 2019-10-01 08:18:28 +10:00
Erik de Castro Lopo f764434a39 Version 1.3.3 2019-08-04 19:47:53 +10:00
Erik de Castro Lopo 1146117229 test: Ignore varying length in metadata
The metadata test checked for specific lengths which change from 5 bytes for
something like "1.3.2" to 9 bytes for something like "1.3.3pre1".
2019-07-15 09:42:38 +10:00
Vitaliy Kirsanov 0c3440aec0 Fixed #107: CMake error without enabling BUILD_CXXLIBS 2019-05-31 19:19:20 +10:00
Vitaliy Kirsanov b967ef060e Added ECHO_C to CMake tests 2019-05-04 11:41:48 +10:00
Vitaliy Kirsanov 5435f15be4 /test/*.sh enabled for CTest in UNIX 2019-05-04 11:41:48 +10:00
orbea 452a447778 Add output-prefix tests
Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
2018-06-11 09:57:21 +10:00
luz.paz 01eb19708c Fix miscellaneous typos.
Found via `codespell -q 3`
2018-05-24 07:20:19 +10:00
Erik de Castro Lopo bb75073428 flac: Use WAVEFORMATEXTENSIBLE when bps != (8|16)
When decoding to WAV, the legacy wFormatTag of WAVE_FORMAT_PCM should
only be used if the bitwidth is 8 or 16. For all other bitwidths,
use WAVEFORMATEXTENSIBLE.

Two of the test programs/scripts also needed updating.
2017-05-27 17:22:19 +10:00
Erik de Castro Lopo ac39d3719f Version 1.3.2 2017-01-01 14:54:28 +11:00
Erik de Castro Lopo 1366367d1f test/test_metaflac.sh: Comment only 2017-01-01 11:52:04 +11:00
Erik de Castro Lopo e64ac79798 Makefile.lite: Fix running of tests
* Generate `test/common.sh` from `test/common.sh.in`.
* Move `is_win` setting to `test_common.sh`.
2016-12-21 20:49:52 +11:00
Erik de Castro Lopo 6b00dc26b2 Another bulk update of copyright dates 2016-12-05 19:07:13 +11:00
Erik de Castro Lopo 6a5fe43b7e Bulk update copyright dates 2016-12-05 06:35:39 +11:00
Erik de Castro Lopo 0b9bcebd78 test/Makefile.lite: Remove call to old script 2016-05-13 06:50:49 +10:00
Erik de Castro Lopo cf0a6ec709 Fix 'make distcheck' target
Last commit added a new file which was not added to `EXTRA_DIST`.
2016-04-27 10:23:38 +10:00
Erik de Castro Lopo 3de7413a36 cuesheet.c: Allow quotes around ISRC field
With this change, flac now accepts cuesheets where the ISRC field is
enclosed in double quotes. Added a test for this as well.

Closes: https://sourceforge.net/p/flac/bugs/436/
2016-04-26 18:06:16 +10:00
Erik de Castro Lopo 1531034202 test/: Remove two redundant scripts
* test_bin.sh looks like it was a personal use script for the original
  developer Josh Coalson and referenced directories outside the actual
  repository.
* test_wrapper.sh was trivial and un-used.
2016-02-11 09:37:20 +11:00
Erik de Castro Lopo efaab3c822 test/ : Use more portable echo constructs
Fix suggested by Daniel Macks.

Closes: https://sourceforge.net/p/flac/bugs/433/
2015-10-04 09:43:38 +11:00
Erik de Castro Lopo 084bb72f78 test_flac.sh: Test unsigned as well as signed 2015-09-07 15:21:47 +10:00
Erik de Castro Lopo bb6f643fdc test_streams.sh: Improve error message 2015-09-07 14:49:55 +10:00
Ben Boeckel f7c52c8aa8 metaflac: add --scan-replay-gain option
Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
2015-08-14 06:21:26 +10:00
Erik de Castro Lopo 1ddeb2640e test/test_flac.sh : Make it work for 'make distcheck'.
An output file was being set to read only and hence could not be
overwritten by a later test. Not sure why this only affected the
'make distcheck' target.
2015-02-24 18:32:07 +11:00
Erik de Castro Lopo 29db3fbf1c Fix cursheet tests for 'make distcheck'. 2015-02-24 06:06:10 +11:00
Erik de Castro Lopo ed22a42bbe test/test_metaflac.sh : Out-of-tree build fixes. 2015-02-15 20:37:40 +11:00
Erik de Castro Lopo d8036ea9d6 test/test_flac.sh : Out-of-tree build fixes. 2015-02-15 20:37:40 +11:00
Erik de Castro Lopo 7c3cd3d908 Update grabbag tests to work out-of-tree. 2015-02-15 20:37:40 +11:00
Erik de Castro Lopo bb2abeaf10 test/test_flac.sh : Silence increased encoding size warnings.
These warning are supposed to occur for files with noise-like
characteristics and some of the tests use files containing noise.
2015-02-15 16:48:46 +11:00
Erik de Castro Lopo bd51618152 test/Makefile.am : Collapse 'fullcheck' into 'check' target. 2015-02-15 16:48:46 +11:00
Erik de Castro Lopo 757ae56140 test/common.sh.in : Add top_builddir and top_srcdir variables.
These are needed for running some of the tests when building out
of tree.
2015-02-15 16:48:46 +11:00
Erik de Castro Lopo b903670f21 replaygain test: Use C code to generate test files. 2015-02-15 16:48:46 +11:00