Miroslav Lichvar [Mon, 3 Dec 2012 20:04:58 +0000 (21:04 +0100)]
Hide symbols with nasm.
Hide all cglobal symbols with nasm >= 2.
Miroslav Lichvar [Mon, 3 Dec 2012 20:04:57 +0000 (21:04 +0100)]
Hide symbols with gcc.
With gcc >= 4 and ELF, set default visibility to hidden and make visible
only the symbols with FLAC_API or FLACPP_API.
A convenience libFLAC-static.la is created for test_libFLAC as it
depends on the hidden symbols.
Miroslav Lichvar [Mon, 3 Dec 2012 20:04:56 +0000 (21:04 +0100)]
Don't override user-specified CFLAGS.
Miroslav Lichvar [Mon, 3 Dec 2012 20:04:55 +0000 (21:04 +0100)]
Remove old GNU-stack sections from nasm files.
They are not needed since the section is defined in nasm.h.
Miroslav Lichvar [Fri, 30 Nov 2012 15:38:28 +0000 (16:38 +0100)]
Add missing options to flac man page.
Erik de Castro Lopo [Wed, 28 Nov 2012 10:49:47 +0000 (21:49 +1100)]
src/libFLAC/stream_encoder.c : Fix typo.
FLAC__treamEncoderReadStatusString -> FLAC__StreamEncoderReadStatusString
Thanks to nu774 on github.
Erik de Castro Lopo [Tue, 13 Nov 2012 06:25:32 +0000 (17:25 +1100)]
Replace printfs with "%s" format strings with puts.
Thanks to Elan Ruusamäe for the suggestion.
Erik de Castro Lopo [Sun, 14 Oct 2012 10:40:40 +0000 (21:40 +1100)]
Add a regresion test for compression levels.
Erik de Castro Lopo [Fri, 12 Oct 2012 11:02:49 +0000 (22:02 +1100)]
Fix a regression that severely impacted compression levels.
Regression was introducted in commit
8bbbf56403808ff75126cd0840a936aedbc4113b
(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.
Erik de Castro Lopo [Wed, 19 Sep 2012 08:06:49 +0000 (18:06 +1000)]
Regenerate manpages.
Erik de Castro Lopo [Wed, 19 Sep 2012 08:06:10 +0000 (18:06 +1000)]
Updates to metaflac manpage from Jaren Stangret <sirjaren@gmail.com>.
Erik de Castro Lopo [Wed, 19 Sep 2012 08:03:19 +0000 (18:03 +1000)]
man/Makefile : Fail more gracefully.
Erik de Castro Lopo [Tue, 11 Sep 2012 05:52:24 +0000 (15:52 +1000)]
Add a convenience function to create a Metadata::Padding object with a
certain size in one statement.
Patch from Bastiaan Timmer <basjetimmer@yahoo.com>
Miroslav Lichvar [Tue, 28 Aug 2012 09:58:41 +0000 (11:58 +0200)]
Optimize FLAC__bitreader_read_rice_signed_block.
Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
Miroslav Lichvar [Tue, 28 Aug 2012 09:58:40 +0000 (11:58 +0200)]
Add new clz function which works with input 0.
Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
Miroslav Lichvar [Tue, 28 Aug 2012 09:58:39 +0000 (11:58 +0200)]
Make FLAC__clz_soft_uint32 static.
Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
Samuli Suominen [Sun, 15 Jul 2012 05:45:10 +0000 (15:45 +1000)]
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>
Erik de Castro Lopo [Wed, 4 Jul 2012 10:05:11 +0000 (20:05 +1000)]
Change order of flac_LDADD libs so it works with mingw.
Erik de Castro Lopo [Wed, 4 Jul 2012 09:54:48 +0000 (19:54 +1000)]
Add 'ar-lib' to .gitignore.
Erik de Castro Lopo [Wed, 4 Jul 2012 09:53:31 +0000 (19:53 +1000)]
configure.ac : Make sure FLAC__HAS_OGG gets defined to either 0 or 1.
Erik de Castro Lopo [Fri, 22 Jun 2012 06:03:04 +0000 (16:03 +1000)]
Move code inside #ifdef _MSC_VER to compat.h.
Erik de Castro Lopo [Fri, 22 Jun 2012 04:52:53 +0000 (14:52 +1000)]
Move all definitions of FLAC__U64L to one place.
Bastiaan Timmer [Thu, 21 Jun 2012 08:48:56 +0000 (01:48 -0700)]
Adds last functions from C metadata api to C++ metadata api
Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
Erik de Castro Lopo [Fri, 22 Jun 2012 04:23:56 +0000 (14:23 +1000)]
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.
Erik de Castro Lopo [Thu, 21 Jun 2012 22:39:20 +0000 (08:39 +1000)]
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).
Cristian Rodríguez [Sat, 2 Jun 2012 21:00:56 +0000 (17:00 -0400)]
Fix build with automake 1.12
recent autotools require calling AM_PROG_AR before LT_INIT
this macro needs to be conditionally defined as it is not
present in old versions.
Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
Bastiaan Timmer [Fri, 8 Jun 2012 09:58:41 +0000 (19:58 +1000)]
Quick patch to fix FLAC_metadata_object api docs.
Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
Cristian Rodríguez [Wed, 9 May 2012 03:58:19 +0000 (23:58 -0400)]
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>
Erik de Castro Lopo [Tue, 8 May 2012 10:08:06 +0000 (20:08 +1000)]
Fix more compiler warnings.
Erik de Castro Lopo [Tue, 8 May 2012 10:06:22 +0000 (20:06 +1000)]
configure.ac : For gcc use -Wall -Wextra when using --enable-gcc-werror.
Erik de Castro Lopo [Tue, 8 May 2012 09:51:50 +0000 (19:51 +1000)]
metadata.cpp : Fix compiler warning on 64 bit.
Patch from Bastiaan Timmer <basjetimmer@yahoo.com>.
Erik de Castro Lopo [Tue, 8 May 2012 09:23:08 +0000 (19:23 +1000)]
src/libFLAC/lpc.c : Include <inttypes.h> so compiling debug version works.
Erik de Castro Lopo [Tue, 8 May 2012 09:12:58 +0000 (19:12 +1000)]
Add missing functions to VorbisComment class.
Patch from Bastiaan Timmer <basjetimmer@yahoo.com> sent to the
<flac-dev@xiph.org> mailing list.
Miroslav Lichvar [Mon, 7 May 2012 11:00:12 +0000 (13:00 +0200)]
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>
Erik de Castro Lopo [Mon, 7 May 2012 09:45:23 +0000 (19:45 +1000)]
Fix all links to libtool version info rules.
Erik de Castro Lopo [Mon, 7 May 2012 09:38:05 +0000 (19:38 +1000)]
Bump version-info for libFLAC++ from 8:0:2 to 8:0:3.
Erik de Castro Lopo [Mon, 7 May 2012 09:22:37 +0000 (19:22 +1000)]
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.
Erik de Castro Lopo [Wed, 18 Apr 2012 20:31:11 +0000 (06:31 +1000)]
Tweak MALLOC_PERTURB_ expression in tests.
Cristian Rodríguez [Wed, 18 Apr 2012 01:12:45 +0000 (22:12 -0300)]
export MALLOC_PERTURB_ and MALLOC_CHECK_ in test suite
That enables an special implementation that checks
for common memory errors and will save us from a lot pain.
Cristian Rodríguez [Tue, 17 Apr 2012 23:35:18 +0000 (20:35 -0300)]
replace local_strtoull with _strtoui64 in windows
Previous patch replaced the other local_strtoll with _strtoi64
Cristian Rodríguez [Tue, 17 Apr 2012 14:38:14 +0000 (11:38 -0300)]
Remove local_strtoull, windows has equivalent function _strtoui64
Cristian Rodríguez [Sat, 7 Apr 2012 22:24:21 +0000 (19:24 -0300)]
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...
Erik de Castro Lopo [Fri, 6 Apr 2012 23:00:09 +0000 (09:00 +1000)]
Use sizeof instead of magic number 4.
Erik de Castro Lopo [Fri, 6 Apr 2012 22:52:39 +0000 (08:52 +1000)]
Update .gitignore.
Cristian Rodríguez [Fri, 6 Apr 2012 15:17:30 +0000 (12:17 -0300)]
Fix make distcheck
Erik de Castro Lopo [Thu, 5 Apr 2012 23:58:23 +0000 (09:58 +1000)]
src/libFLAC/include/private/macros.h : Add copyright header.
Cristian Rodríguez [Thu, 5 Apr 2012 22:39:37 +0000 (19:39 -0300)]
V2: Use a single definition of MIN and MAX in sources
Cristian Rodríguez [Thu, 5 Apr 2012 18:45:57 +0000 (15:45 -0300)]
remove unnecesary typedef in bitwriter.c
Erik de Castro Lopo [Thu, 5 Apr 2012 11:24:06 +0000 (21:24 +1000)]
Fix gcc-4.7 compiler warnings.
Erik de Castro Lopo [Thu, 5 Apr 2012 11:02:40 +0000 (21:02 +1000)]
Fix buffer overflow by replacing strcpy with memcpy.
Thanks to Cristian Rodríguez <crrodriguez@opensuse.org> for the
report.
Erik de Castro Lopo [Wed, 4 Apr 2012 11:29:25 +0000 (21:29 +1000)]
Remove casting of return value from *alloc() functions.
Erik de Castro Lopo [Wed, 4 Apr 2012 10:08:52 +0000 (20:08 +1000)]
configure.ac : Add AM_PROG_CC_C_O.
Erik de Castro Lopo [Fri, 30 Mar 2012 11:25:39 +0000 (22:25 +1100)]
Remove unnecessary typedef.
Erik de Castro Lopo [Fri, 30 Mar 2012 10:55:08 +0000 (21:55 +1100)]
Add GCC specific optimisation for log base 2 operations.
Based on a patch from Cristian Rodríguez.
Erik de Castro Lopo [Fri, 30 Mar 2012 10:35:41 +0000 (21:35 +1100)]
Remove winamp2 plugin
Patch from Cristian Rodríguez
Nullsoft has provided a native FLAC support since Winamp 5.31 (since
the year 2006).
Erik de Castro Lopo [Sun, 18 Mar 2012 20:44:11 +0000 (07:44 +1100)]
Add patch from Earl Chew <earl_chew@yahoo.com> that adds testing for
the replay gain calculations.
Erik de Castro Lopo [Mon, 5 Mar 2012 10:12:20 +0000 (21:12 +1100)]
Rename ENDSWAP_INT to ENDSWAP_32.
Dave Yeo [Sun, 26 Feb 2012 20:18:06 +0000 (12:18 -0800)]
Include stdlib.h for _response() and _wildcard() declarations on OS/2
Dave Yeo [Sun, 26 Feb 2012 20:14:15 +0000 (12:14 -0800)]
a.out format does not support many .section directives
Erik de Castro Lopo [Sun, 26 Feb 2012 11:41:44 +0000 (22:41 +1100)]
configure.ac : Report useful info at the end of configure.
Erik de Castro Lopo [Sun, 26 Feb 2012 09:00:36 +0000 (20:00 +1100)]
Fix a couple 'inlining failed' warning messages.
Erik de Castro Lopo [Sun, 26 Feb 2012 08:08:41 +0000 (19:08 +1100)]
Fix a couple of sign-compare warnings.
Earl Chew [Sat, 18 Feb 2012 18:04:51 +0000 (10:04 -0800)]
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>
Earl Chew [Thu, 23 Feb 2012 00:57:54 +0000 (16:57 -0800)]
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>
Erik de Castro Lopo [Sun, 26 Feb 2012 01:19:39 +0000 (12:19 +1100)]
Speed up the tests by testing slightly fewer combinations.
Erik de Castro Lopo [Fri, 24 Feb 2012 23:25:54 +0000 (10:25 +1100)]
.gitignore : Ignore more m4 files.
Erik de Castro Lopo [Fri, 17 Feb 2012 07:00:10 +0000 (18:00 +1100)]
Remove '#if 0'-ed out code.
Erik de Castro Lopo [Fri, 17 Feb 2012 06:52:12 +0000 (17:52 +1100)]
Fix a bunch of -Wtype-limits warnings.
Erik de Castro Lopo [Mon, 13 Feb 2012 08:58:08 +0000 (19:58 +1100)]
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.
Erik de Castro Lopo [Mon, 13 Feb 2012 08:55:46 +0000 (19:55 +1100)]
Fix for autoreconf failures.
Fixes "undefined macro: AM_PATH_XMMS" and similar errors which cause
autoreconf to fail.
From Sebastian Andrzej Siewior <bigeasy@linutronix.de> via Debian.
Erik de Castro Lopo [Mon, 13 Feb 2012 08:46:32 +0000 (19:46 +1100)]
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.
Erik de Castro Lopo [Mon, 13 Feb 2012 08:39:55 +0000 (19:39 +1100)]
libFLAC.m4 : Prevent empty -L flag.
Fix libFLAC.m4 may set empty -L flag when configure is called without
arguments, provided of course that the target package's configure script
is properly re-generated against the fixed libFLAC.m4
Patch from Fabian Greffrath <fabian+debian@greffrath.com> via Debian.
Erik de Castro Lopo [Sun, 12 Feb 2012 19:22:30 +0000 (06:22 +1100)]
Merge branch 'noname'
Erik de Castro Lopo [Sun, 12 Feb 2012 09:49:17 +0000 (20:49 +1100)]
Disable executable stack in libFLAC.so.
This allows programs using it to run correctly on SE Linux systems, and
with exec-shield.
Patch from Russell Coker <russell@coker.com.au> via Debian.
Erik de Castro Lopo [Sun, 12 Feb 2012 09:45:53 +0000 (20:45 +1100)]
Add missing <cstring> include.
Patch from Cyril Brulebois <cyril.brulebois@enst-bretagne.fr> via
Debian. Closes Debian bug #455304.
Erik de Castro Lopo [Sun, 12 Feb 2012 09:45:53 +0000 (20:45 +1100)]
Add missing <csting> include.
Patch from Cyril Brulebois <cyril.brulebois@enst-bretagne.fr> via
Debian. Closes Debian bug #455304.
Erik de Castro Lopo [Sun, 12 Feb 2012 09:39:09 +0000 (20:39 +1100)]
metaflac : Exit with error if invalid option is passed.
Fix from Joshua Kwan <joshk@triplehelix.org> via Debian.
Closes Debian bug #329979.
Erik de Castro Lopo [Sun, 12 Feb 2012 09:37:16 +0000 (20:37 +1100)]
Fix misuse of \r (potentially) in flac -d or -t output.
Patch from Joshua Kwan <joshk@triplehelix.org> via Debian.
Closes Debian bug #138828.
Erik de Castro Lopo [Fri, 10 Feb 2012 08:19:11 +0000 (19:19 +1100)]
include/FLAC/ordinals.h : Remove CPP hackery.
This change assumes that a C99 <stdint.h> header is available. For
compilers where that is not the case, the user should provide a
minimal replacement header.
Erik de Castro Lopo [Wed, 8 Feb 2012 10:07:08 +0000 (21:07 +1100)]
Patch from Dave Yeo to remove more CPP hackery.
Dave's comments:
This commit will break OS/2's EMX 0.9d library (GCC 2.8.1) which has been
been replaced by klibc. Considering the age of EMX and lack of testing
and that klibc contains so many improvements I think this is exceptable.
Erik de Castro Lopo [Tue, 7 Feb 2012 07:41:28 +0000 (18:41 +1100)]
Fix 'make distcheck'.
This disables the tests that don't run correctly out-of-tree from
the 'make check' target. Also add a new 'make fullcheck' target
which is the full old test suite.
Erik de Castro Lopo [Sun, 5 Feb 2012 20:15:48 +0000 (07:15 +1100)]
Add XIPH_BSWAP32 configure macro to detect __builtin_bswap32() intrinsic.
Erik de Castro Lopo [Sun, 5 Feb 2012 07:58:11 +0000 (18:58 +1100)]
Add m4/endian.m4 and use it in configure.ac.
Erik de Castro Lopo [Sat, 4 Feb 2012 06:34:43 +0000 (17:34 +1100)]
Encoder::Stream::set_metadata() broken - ID: 3282704
http://sourceforge.net/tracker/?func=detail&aid=3282704&group_id=13478&atid=313478
Erik de Castro Lopo [Sat, 4 Feb 2012 06:30:57 +0000 (17:30 +1100)]
Memory and fd leak fixes - ID: 3436668
http://sourceforge.net/tracker/?func=detail&aid=3436668&group_id=13478&atid=313478
Erik de Castro Lopo [Sun, 5 Feb 2012 05:29:43 +0000 (16:29 +1100)]
configure.ac : Patch from David Yeo. OS/2 uses aout format.
Erik de Castro Lopo [Sun, 5 Feb 2012 05:28:40 +0000 (16:28 +1100)]
configure.ac : Patch from David Yeo adding LT_NO_UNDEFINED for OS/2.
Erik de Castro Lopo [Sun, 5 Feb 2012 05:25:22 +0000 (16:25 +1100)]
Purge MINGW_WINSOCK_LIBS config variable.
This was only needed for ntohl() function which has already been removed.
Erik de Castro Lopo [Sun, 5 Feb 2012 02:45:35 +0000 (13:45 +1100)]
Remove configure maintainer mode.
It doesn't play nicely with git and multiple branches.
Erik de Castro Lopo [Sat, 4 Feb 2012 11:06:23 +0000 (22:06 +1100)]
Improve endswapping (especially purge ntohl).
Erik de Castro Lopo [Sat, 4 Feb 2012 10:08:46 +0000 (21:08 +1100)]
configure.ac : Detect more headers.
Erik de Castro Lopo [Sat, 4 Feb 2012 22:21:29 +0000 (09:21 +1100)]
include/share/Makefile.am : Add compat.h to EXTRA_DIST.
Erik de Castro Lopo [Sat, 4 Feb 2012 09:47:10 +0000 (20:47 +1100)]
Patch from JonY to remove more CPP hackery.
Erik de Castro Lopo [Sat, 4 Feb 2012 05:13:37 +0000 (16:13 +1100)]
Add file include/share/compat.h and start moving CPP hackery into it.
Erik de Castro Lopo [Sat, 4 Feb 2012 05:12:05 +0000 (16:12 +1100)]
Makefile.am : Add CLEANFILES entry.
Erik de Castro Lopo [Sat, 4 Feb 2012 04:31:28 +0000 (15:31 +1100)]
Patch from JonY to suppress redefinition warnings with mingw-w64 lfs64 warnings.
Erik de Castro Lopo [Sat, 4 Feb 2012 03:13:45 +0000 (14:13 +1100)]
Renable metaflac tests disabled earlier because they were failing.
Erik de Castro Lopo [Sat, 4 Feb 2012 03:08:12 +0000 (14:08 +1100)]
Fix cuesheet bug introduced in
ce8a75134cace056f6c436d54b57bad1a1d93797.
This bug was causing the test_metaflac.sh test to fail after Earl Chew's
patch
19050f74eaa1aa6d609ca065e1a854ada5bb6b4c was supposed to fix an
older bug.
Erik de Castro Lopo [Sat, 4 Feb 2012 02:01:02 +0000 (13:01 +1100)]
Cuesheet patch from Earl Chew.
When reading the INDEX from the cue sheet, the format MM:SS:FF format
is disallowed if the sample frequency is not a multiple of 75 because
the index would only be approximate. However, 00:00:00 is _exact_
because it denotes the start of the track, so allow it as a special
case.
Erik de Castro Lopo [Sat, 4 Feb 2012 00:06:12 +0000 (11:06 +1100)]
Patch from David Yeo to conditionally include <inttypes.h>.