Commit Graph

1995 Commits

Author SHA1 Message Date
Miroslav Lichvar
7edf67769f Remove old GNU-stack sections from nasm files.
They are not needed since the section is defined in nasm.h.
2012-12-04 17:43:49 +11:00
Erik de Castro Lopo
70be52b1dd src/libFLAC/stream_encoder.c : Fix typo.
FLAC__treamEncoderReadStatusString -> FLAC__StreamEncoderReadStatusString

Thanks to nu774 on github.
2012-11-30 15:33:59 +11:00
Erik de Castro Lopo
86efeb5903 Replace printfs with "%s" format strings with puts.
Thanks to Elan Ruusamäe for the suggestion.
2012-11-13 17:26:08 +11:00
Erik de Castro Lopo
1f0daccf2b Add a regresion test for compression levels. 2012-10-14 21:40:40 +11:00
Erik de Castro Lopo
fc360735ce Fix a regression that severely impacted compression levels.
Regression was introducted in commit 8bbbf56403
(Feb 1 19:58:09 2012) when fixing compiler warnings. In src/libFLAC/lpc.c the
line:

        ref[i] = (r/=err);

was erroniously removed because the left hand side, ref[i] was never used.
Obviously, the correct thing to do was to replace that line with:

        r /= err;

This code has not been officially released. The only people who would have
been affected are people who compiled FLAC from git between February and
now.

The only adverse affect of this error was that compression ratio would have
been severely compromised. No audio is lost, and if anyone has a file that
compressed with a bad version of FLAC can decompress it to WAV and then
re-compress with a fixed version.
2012-10-12 22:02:49 +11:00
Erik de Castro Lopo
b21f190861 Add a convenience function to create a Metadata::Padding object with a
certain size in one statement.

Patch from Bastiaan Timmer <basjetimmer@yahoo.com>
2012-09-11 15:52:24 +10:00
Miroslav Lichvar
8d9e5c6e8e Optimize FLAC__bitreader_read_rice_signed_block.
Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
2012-08-28 21:17:18 +10:00
Miroslav Lichvar
7b37472a2f Add new clz function which works with input 0.
Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
2012-08-28 21:17:15 +10:00
Miroslav Lichvar
d69e807e10 Make FLAC__clz_soft_uint32 static.
Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
2012-08-28 21:17:12 +10:00
Samuli Suominen
12022d90dd Fix assembler code to make it PIC so the dynamic linker does
not have to do text relocations on-the-fly. Patch from Gentoo
via Jaren Stangret <sirjaren@gmail.com>

Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
2012-07-26 17:21:41 +10:00
Erik de Castro Lopo
a9f3bc8eed Change order of flac_LDADD libs so it works with mingw. 2012-07-04 20:05:11 +10: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
Bastiaan Timmer
1294b64996 Adds last functions from C metadata api to C++ metadata api
Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
2012-06-22 14:35:07 +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
Erik de Castro Lopo
feab11e9bd Fix FLAC__stream_decoder_delete() and FLAC__stream_encoder_delete()
so that they will simply return if passed a NULL pointer (ie just
like the C free() stdlib function).
2012-06-22 13:39:40 +10:00
Cristian Rodríguez
387b72731d bitmath: Finish up optimizations
This patch adds support for other compilers and systems
including MSVC, Intel C compiler etc..

Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
2012-06-08 19:58:29 +10:00
Erik de Castro Lopo
605f920816 Fix more compiler warnings. 2012-05-08 20:08:06 +10:00
Erik de Castro Lopo
56c3191827 metadata.cpp : Fix compiler warning on 64 bit.
Patch from Bastiaan Timmer <basjetimmer@yahoo.com>.
2012-05-08 19:51:50 +10:00
Erik de Castro Lopo
155719b470 src/libFLAC/lpc.c : Include <inttypes.h> so compiling debug version works. 2012-05-08 19:23:08 +10:00
Erik de Castro Lopo
601e96102c Add missing functions to VorbisComment class.
Patch from Bastiaan Timmer <basjetimmer@yahoo.com> sent to the
<flac-dev@xiph.org> mailing list.
2012-05-08 19:12:58 +10:00
Miroslav Lichvar
5289b309cf Optimize COUNT_ZERO_MSBS macro
Reorder the conditions according to the expected distribution of input
signal. This seems to make it almost as fast as the clz builtin using
the bsr instruction.

Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
2012-05-07 21:45:33 +10:00
Erik de Castro Lopo
d9fde55674 Fix all links to libtool version info rules. 2012-05-07 19:45:23 +10:00
Erik de Castro Lopo
f491b73385 Bump version-info for libFLAC++ from 8:0:2 to 8:0:3. 2012-05-07 19:38:05 +10:00
Erik de Castro Lopo
cd9053cd31 Add functionality present in the C library to the to C++ SeekTable class.
Patch from Bastiaan Timmer <basjetimmer@yahoo.com> sent to the
<flac-dev@xiph.org> mailing list.
2012-05-07 19:22:37 +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
Cristian Rodríguez
9b7cb22f84 Update and improve autotools build
- INCLUDES is deprecated, and CPPFLAGS is an user-defined
  variable, use the proper AM_CPPFLAGS instead

- Remove FLAC__INLINE definition, providing proper
  replacement for MSVC compilers.

- Detect if we have C99 's lround and provide a replacement
  for windows...
2012-04-08 09:03:03 +10:00
Erik de Castro Lopo
8340ab3bc8 Use sizeof instead of magic number 4. 2012-04-07 09:00:09 +10:00
Cristian Rodríguez
f13ad37519 Fix make distcheck 2012-04-07 08:36:27 +10:00
Erik de Castro Lopo
425d39b5f8 src/libFLAC/include/private/macros.h : Add copyright header. 2012-04-06 09:58:23 +10:00
Cristian Rodríguez
f029625591 V2: Use a single definition of MIN and MAX in sources 2012-04-06 09:52:06 +10:00
Cristian Rodríguez
d30fe60fc6 remove unnecesary typedef in bitwriter.c 2012-04-06 09:06:17 +10:00
Erik de Castro Lopo
5de949f417 Fix gcc-4.7 compiler warnings. 2012-04-05 21:24:06 +10:00
Erik de Castro Lopo
dff08f1be0 Fix buffer overflow by replacing strcpy with memcpy.
Thanks to Cristian Rodríguez <crrodriguez@opensuse.org> for the
report.
2012-04-05 21:02:40 +10:00
Erik de Castro Lopo
6c2040dc90 Remove casting of return value from *alloc() functions. 2012-04-04 21:29:25 +10:00
Erik de Castro Lopo
66bd44bacc Remove unnecessary typedef. 2012-03-30 22:25:39 +11:00
Erik de Castro Lopo
5c44cd7d0c Add GCC specific optimisation for log base 2 operations.
Based on a patch from Cristian Rodríguez.
2012-03-30 21:55:08 +11:00
Erik de Castro Lopo
238b2676c2 Remove winamp2 plugin
Patch from Cristian Rodríguez
Nullsoft has provided a native FLAC support since Winamp 5.31 (since
the year 2006).
2012-03-30 21:35:41 +11:00
Erik de Castro Lopo
2f8b6a0349 Rename ENDSWAP_INT to ENDSWAP_32. 2012-03-05 21:12:20 +11:00
Dave Yeo
b81e794302 Include stdlib.h for _response() and _wildcard() declarations on OS/2 2012-02-27 17:36:34 +11:00
Dave Yeo
c89269e20d a.out format does not support many .section directives 2012-02-27 17:36:27 +11:00
Erik de Castro Lopo
b48909780b Fix a couple 'inlining failed' warning messages. 2012-02-26 20:00:36 +11:00
Erik de Castro Lopo
d273fceece Fix a couple of sign-compare warnings. 2012-02-26 19:08:41 +11:00
Earl Chew
41748f049c Port David Robinson's equalloudfilt.m MATLAB script to scilab so that the ReplayGain filter settings can be generated using an OpenSource tool.
Signed-off-by: Earl Chew <earl_chew@yahoo.com>
2012-02-26 12:41:35 +11:00
Earl Chew
0554a4aee6 Support 56kHz to 19.2kHz gain analysis (Patch v4)
This implementation uses decimation to generate an estimate of the
required ReplayGain adjustment for tracks sampled at high rates.

This approach avoids having to generate filters with commensurately more taps,
and also the subsequent effect on performance as these additional
taps are evaluated for high sample rate tracks.

Filter table entries with coefficients that are unchanged are
marked /* ORIGINAL */.

The remaining entries are new and have coefficient values obtained
from src/utils/loudness/loudness.sci. See:

        http://lists.xiph.org/pipermail/flac-dev/2012-February/003220.html

Because these filter coefficients can be generated from a known source,
they are preferred to the FooBar2000 coefficients whose provenance is
unknown.

Signed-off-by: Earl Chew <earl_chew@yahoo.com>
2012-02-26 12:19:56 +11:00
Erik de Castro Lopo
774e0776a5 Speed up the tests by testing slightly fewer combinations. 2012-02-26 12:19:39 +11:00
Erik de Castro Lopo
587e118bfc Fix a bunch of -Wtype-limits warnings. 2012-02-17 17:52:12 +11:00
Erik de Castro Lopo
a4ffcc0239 Fix -Werror=format-security errors.
Fixes "format not a string literal and no format arguments
 [-Werror=format-security]" errors.

Patch from Fabian Greffrath <fabian+debian@greffrath.com> via Debian.
Closes Debian bug #643377.
2012-02-13 19:58:08 +11:00
Erik de Castro Lopo
b6e64af3b3 Disable Altivec on host triplet powerpc-unknown-linux-gnuspe.
SPE is incompatible with AltiVec because it shares the same opcode range.

Patch from Sebastian Andrzej Siewior <bigeasy@linutronix.de> via Debian.
2012-02-13 19:46:32 +11:00