lrint() and lrintf() are ridiculously slow when libsndfile is built
using Visual C++.
On x86 and AMD64 platforms this patch adds SSE2 optimized versions.
It is safe to assume that non-SSE2 processors are no longer available to
avoid unnecessary checks.
There was a long standing problem where the compiler was not able to
check format speficiers for `psf_binheader_writef`. This is a standard
problem with using non-standard format specifiers with stdargs.
This solution wraps all non-format parameters pass to that functions
with a macro which performs an explicit type cast. The second step is
to have a Python program make sure these macro wrappers match the
format specifiers.
Closes: https://github.com/erikd/libsndfile/issues/241
Previously this was only logged but not exposed. Now applications can
query the information.
Based on a patch from Stefan Sauer <ensonic@users.sf.net>.
Closes: https://github.com/erikd/libsndfile/pull/54
Patches applied:
* erikd@miles--2004/libsndfile--codec-close--0--base-0
tag of erikd@miles--2004/libsndfile--mdev--1.0--patch-545
* erikd@miles--2004/libsndfile--codec-close--0--patch-1
Start work on separate codec and container close functions.
* erikd@miles--2004/libsndfile--codec-close--0--patch-2
Start using codec_close function pointer.
* erikd@miles--2004/libsndfile--codec-close--0--patch-3
Start using container_close function pointer.
* erikd@miles--2004/libsndfile--codec-close--0--patch-4
dwvw.c : Missed this in previous changes.
* erikd@miles--2004/libsndfile--codec-close--0--patch-5
ima_adpcm.c : Modify existing *_close to be a codec_close function.
* erikd@miles--2004/libsndfile--codec-close--0--patch-6
ms_adpcm.c : Modify existing *_close to be a codec_close function.
* erikd@miles--2004/libsndfile--codec-close--0--patch-7
Remove the old close function pointer from the SF_PRIVATE struct.
* erikd@miles--2004/libsndfile--codec-close--0--patch-8
lossy_comp_test.c : Reinstate check_comment() code form SF_FORMAT_(IMA|MS)_ADPCM.
Patches applied:
* erikd@miles--2004/libsndfile--stable--0--base-0
tag of erikd@miles--2004/libsndfile--mdev--1.0--patch-188
* erikd@miles--2004/libsndfile--stable--0--patch-1
Merge everything but the Ogg stuff from the --mdev branch.
* erikd@miles--2004/libsndfile--stable--0--patch-2
Change psf->buffer to a more type safe union.