Ralph Giles
22d4893d28
Fix bswap16 issue on Debian 6.
...
Versions of GCC prior to 4.8 didn't provide an implementation
of __builtin_bswap16 on x86_64. Detect those versions and
supply a fallback implementation. A cleaner fix would be
to detect bswap16 independently of bswap32 in configure
and handle them separately.
See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52624
Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com >
2014-07-03 18:59:49 +10:00
Erik de Castro Lopo
0d1cb19525
include/share/endswap.h : Fix fallback ENDSWAP_16 macro.
2014-06-30 09:20:09 +10:00
Erik de Castro Lopo
699e7c457a
include/share/endswap.h : Add endswapping of 16 bit values.
...
Also add macros H2LE_16 and H2LE_32, which do host to little-endian
swapping of 16 and 32 bit values respectively.
2014-06-29 20:20:06 +10:00
Erik de Castro Lopo
46bedb58d3
Update URLs as nedeed.
...
Sourceforge.net links updated as nedeed with some of them
being changed to point to xiph.org/flac.
Patch-from: lvqcl <lvqcl.mail@gmail.com >
2014-06-28 09:12:45 +10:00
Erik de Castro Lopo
731655ad23
replaygain_analysis : Rename float_t -> flac_float_t.
...
There were a number of reports that float_t clashed with a type
defined in Linux system header files.
2014-06-24 21:01:02 +10:00
Erik de Castro Lopo
b4f7528e9a
replaygain_analysis : Switch to standard C sized integer types.
2014-06-16 07:24:43 +10:00
Erik de Castro Lopo
b1b6caf8e1
replaygain_synthesis.h : Fix FLAC_SHARE__MAX_SUPPORTED_CHANNELS.
...
Was previously hard coded as 2 when it should be FLAC__MAX_CHANNELS.
Patch-from: lvqcl <lvqcl.mail@gmail.com >
2014-05-11 03:24:32 -07:00
Erik de Castro Lopo
ce3e09e718
share/compat.h : Remove duplicate flac_stat definition.
...
Patch-from: lvqcl <lvqcl.mail@gmail.com >
2014-04-11 06:14:40 +10:00
Erik de Castro Lopo
006b8356d5
Fix all instances of '#if HAVE_CONFIG_H'.
...
Should be '#ifdef HAVE_CONFIG_H'.
Closes: https://sourceforge.net/p/flac/bugs/410/
2014-03-24 12:06:49 +11:00
Erik de Castro Lopo
4bc1220b32
Move FLAC__STRCASECMP definition to compat.h.
...
Patch-from: lvqcl <lvqcl.mail@gmail.com >
2014-03-14 15:33:11 +11:00
Erik de Castro Lopo
d40e986a1e
Add FLAC__SSE_SUPPORTED and FLAC__SSE2_SUPPORTED flags.
...
* Allow compiling using GCC GCC w/o SSE support.
* Allow SSE4.1 intrinsic functions to be enabled.
Patch-from: lvqcl <lvqcl.mail@gmail.com >
2014-01-30 21:49:55 +11:00
Erik de Castro Lopo
b84f07248e
compat.h : Simplify definition of FLAC__U64L.
...
Patch-from: lvqcl <lvqcl.mail@gmail.com >
2014-01-07 21:26:45 +11:00
Erik de Castro Lopo
cf28c0144b
Adds use of restrict keyword to improve encoding speed.
...
Restrict works very poorly in Visual Studio (much slower than without)
so defined flac_restrict in share/compat.h and use that in:
lpc_compute_residual...()
lpc_restore_signal...()
As a result, FLAC__lpc_compute_residual_from_qlp_coefficients_wide_intrin_sse41()
offers no advantage for 64-bit compiles and was removed from x86-64 part
of stream_encoder.c
Patch-from: lvqcl <lvqcl.mail@gmail.com >
2013-10-10 18:24:19 +11:00
Erik de Castro Lopo
ecd0acba75
Improve x86 instrinsic implementation.
...
* Splits lpc_x86intrin.c to lpc_intrin_sse.c and lpc_intrin_sse2.c
* Add FLAC__lpc_compute_residual_from_qlp_coefficients_intrin_sse2()
function to lpc_intrin_sse2.c
* Add lpc_intrin_sse41.c with two ..._wide_intrin_sse41() functions
(useful for 24-bit en-/decoding)
* Add precompute_partition_info_sums_intrin_sse2() / ...ssse3() and
disables precompute_partition_info_sums_32bit_asm_ia32_().
SSE2 version uses 4 SSE2 instructions instead of 1 SSSE3 instruction
PABSD so it is slightly slower.
Patch-from: lvqcl <lvqcl.mail@gmail.com >
2013-10-04 01:41:48 +10:00
Erik de Castro Lopo
31a79d7e9a
Move M_PI definition to include/share/compat.h.
...
Patch-from: lvqcl <lvqcl.mail@gmail.com >
2013-09-27 03:05:06 +10:00
Erik de Castro Lopo
ce6832bb62
Move defintion of M_LN2 to include/share/compat.h.
2013-09-07 22:00:23 +10:00
Erik de Castro Lopo
3ece67d71f
include/share/compat.h : Remove deinition of restrict.
...
Wasn't being used anywhere in the code and clashes with a symbol in
MSVC.
Suggested-by: lvqcl <lvqcl.mail@gmail.com >
2013-09-01 10:32:52 +10:00
Erik de Castro Lopo
b1982fbc5f
Set version to 1.3.0 and update coyprights throughout.
2013-05-26 19:17:53 +10:00
Erik de Castro Lopo
52fab8ba7e
Win utf8 treatment for CreateFile.
...
Patch from Janne Hyvärinen <cse@sci.fi >.
2013-04-21 17:53:07 +10:00
Erik de Castro Lopo
0b736a5605
Fix compiler warnings related to win utf8 stuff.
2013-04-21 17:24:59 +10:00
Erik de Castro Lopo
d35b21e7b9
include/share/compat.h : Include cleanup.
...
Patch from Janne Hyvärinen <cse@sci.fi >.
2013-04-07 18:41:24 +10:00
Erik de Castro Lopo
e8d7b7f5f9
Fix Windows SIZE_T_MAX definition.
...
Problem reported by Ulrich Klauer <ulrich@chirlu.de >.
Patch from Janne Hyvärinen <cse@sci.fi >.
2013-04-07 18:12:35 +10:00
Erik de Castro Lopo
b9574fe589
Fix a bunch of compiler warnings (mainly MinGW).
2013-04-07 13:44:45 +10:00
Erik de Castro Lopo
f44c353e59
Two small patches for utf8 I/O.
...
Thanks to LRN <lrn1986@gmail.com >.
2013-04-02 06:27:12 +11:00
Erik de Castro Lopo
c7603948de
include/share/Makefile.am : Add win_utf8_io.h.
2013-04-02 06:05:47 +11:00
Erik de Castro Lopo
932c7ba26c
Purge more strcpy/strcat usage.
2013-04-01 22:00:59 +11:00
Erik de Castro Lopo
2199d08692
Enable utf8 I/O stuff when compiling with MinGW.
2013-04-01 19:57:13 +11:00
Erik de Castro Lopo
b3dab5416d
include/share/compat.h : Cleanup.
2013-03-29 21:25:59 +11:00
Erik de Castro Lopo
7dc5e3a8ff
Rename _flac_stat to flac_stat_s.
2013-03-29 21:25:59 +11:00
Erik de Castro Lopo
608e246f52
Rename all 'utf8_io' -> 'win_utf8_io'.
2013-03-29 21:25:59 +11:00
Erik de Castro Lopo
5705b4d7b2
Huge Windows utf8 I/O patch.
...
Patch from Janne Hyvärinen <cse@sci.fi >.
2013-03-29 21:25:59 +11:00
Erik de Castro Lopo
9a93680d2b
include/share/compat.h : Simplify.
2013-03-23 22:02:56 +11:00
Erik de Castro Lopo
15a011c43d
Add new file include/share/safe_str.h.
...
New functions safe_strncat() and safe_strncpy() which always return
a NUL terminated string and do not overflow the destination buffer.
2013-03-19 20:15:49 +11:00
Erik de Castro Lopo
5a14742dad
include/share/private.h : Add FLAC_API to private functions.
...
Patch from Janne Hyvärinen <cse@sci.fi >.
2013-03-17 22:04:43 +11:00
Erik de Castro Lopo
06af237c70
Add file src/share/grabbag/snprintf.c to grabbag library.
...
Define function flac_snprintf() which has ISO C99 snprintf() behavior
even when compiling with Microsoft Visual Studio, by wrapping the
MSVS snprintf_s() function.
2013-03-17 20:52:04 +11:00
Erik de Castro Lopo
ca7a3cb822
Restore code dropped in commit f25b2602dc.
2013-03-15 06:37:59 +11:00
Erik de Castro Lopo
f25b2602dc
Fix a couple of Windows 2Gig file size issues.
...
Patch submitted by Janne Hyvärinen <cse@sci.fi >.
2013-03-14 18:22:37 +11:00
Erik de Castro Lopo
dd1fa80883
Fix -Wstrict-prototypes -Wmissing-prototypes warnings.
...
The files src/flac/encode.c and src/libFLAC/stream_encoder.c use
functions in libFLAC that are marked as 'unpublished debug routines'.
This patch moves these functions to new file include/share/private.h
and marks them as 'unpublished debug routines'.
2013-03-11 06:06:33 +11:00
Erik de Castro Lopo
b85cc57d73
include/share/compat.h : feeko and ftello fixes for MinGW.
...
Patch from LRN <lrn1986@gmail.com >.
2013-03-10 18:38:07 +11:00
Erik de Castro Lopo
fd6b192d25
Another MSVC patch from Ben Alison.
2013-03-08 20:47:43 +11:00
Erik de Castro Lopo
a4c321e492
Large patch from Ben Allison fixing the MSVC build.
...
Patch tweaked a little to fix Linux build and clean up minor problems.
2013-03-06 22:17:51 +11:00
Erik de Castro Lopo
91790ef965
Fix compiler warnings from new compiler flags.
2013-03-06 07:42:08 +11:00
Erik de Castro Lopo
b104c6d8af
include/share/compat.h : For MSVC define inline as __inline.
2013-01-26 10:11:39 +11:00
Max Horn
66c0a581d2
autogen.sh: replace this by a simple call to autoreconf
...
The autoreconf tool is provided by autoconf to do what custom
autogen.sh scripts in many projects used to do. Only it is more
robust and widely tested. It has been available for several years,
too. No reason to rely on custom code for this.
Signed-off-by: Max Horn <max@quendi.de >
2012-12-13 08:12:14 +11:00
Miroslav Lichvar
6a1f59b58f
Update FSF address.
2012-12-06 06:17:26 +11:00
Erik de Castro Lopo
a7e3705d05
Move code inside #ifdef _MSC_VER to compat.h.
2012-06-22 16:03:04 +10:00
Erik de Castro Lopo
5b62b770bc
Move all definitions of FLAC__U64L to one place.
2012-06-22 14:52:53 +10:00
Erik de Castro Lopo
8749dc278d
Fix building when configured with --disable-shared.
...
The problem was that the function safe_malloc_mul_2op_() was originally
defined as static inline in inclide/share/alloc.h but had to be moved
because GCC was refusing to inline it. Once moved however, static linking
would fail when building the flac executable because the function ended
up beiong linked twice.
2012-06-22 14:23:56 +10:00
Cristian Rodríguez
c2417da842
replace local_strtoull with _strtoui64 in windows
...
Previous patch replaced the other local_strtoll with _strtoi64
2012-04-18 22:00:59 +10:00
Cristian Rodríguez
7e62afe9fa
Remove local_strtoull, windows has equivalent function _strtoui64
2012-04-18 21:59:11 +10:00