1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-11-21 10:55:51 +02:00
FFmpeg/libavutil
Alessandro Ghedini 8542f9c4f1 replaygain: correctly parse peak values
According to the ReplayGain spec, the peak amplitude may overflow and may result
in peak amplitude values greater than 1.0 with psychoacoustically coded audio,
such as MP3. Fully compliant decoders must allow peak overflows.

Additionally, having peak values in the 0<->UINT32_MAX scale makes it more
difficult for applications to actually use the peak values (e.g. when
implementing clipping prevention) since values have to be rescaled down.

This patch corrects the peak parsing by removing the rescaling of the decoded
values between 0 and UINT32_MAX and the 1.0 upper limit.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2014-04-04 17:40:19 +02:00
..
aarch64 aarch64: float_dsp NEON assembler 2014-03-18 22:56:07 +01:00
arm Update dsputil- and SIMD-related comments to match reality more closely 2014-03-13 05:50:29 -07:00
avr32
bfin bfin: Refactor duplicated assembly-related macros 2014-03-13 08:15:52 -07:00
mips
ppc ppc: Add and use convenience macro to check for AltiVec availability 2013-08-28 23:54:15 +02:00
sh4
tomi intreadwrite: tomi: Add missing attributes.h #include for av_always_inline 2013-02-20 00:45:30 +01:00
x86 x86: add detection for Bit Manipulation Instruction sets 2014-02-23 15:29:36 +01:00
adler32.c
adler32.h
aes.c avutil: remove timer.h include from internal.h 2014-01-25 21:50:20 +01:00
aes.h
atomic_gcc.h atomic: fix CAS with armcc. 2013-03-09 08:36:40 +01:00
atomic_suncc.h atomic: Add include guards to the implementation headers 2013-03-08 12:00:06 +02:00
atomic_win32.h atomic: Add include guards to the implementation headers 2013-03-08 12:00:06 +02:00
atomic.c threads: Check w32threads dependencies at the configure stage 2014-02-19 15:12:37 +01:00
atomic.h atomics: cosmetics: Restructure ifdefs for greater clarity 2013-12-20 11:23:13 +01:00
attributes.h attributes: disable flatten on llvm/clang 2013-11-03 11:51:40 +01:00
audio_fifo.c
audio_fifo.h
audioconvert.h lavu: rename audioconvert.* to channel_layout.* and deprecate audioconvert.h 2012-11-11 13:35:12 -05:00
avassert.h
avstring.c avstring-test: Mark pointer passed to av_free() as non-const 2013-10-23 13:17:23 +02:00
avstring.h avstring: Add locale independent versions of some ctype.h functions 2013-03-07 15:16:26 +02:00
avutil.h lavu: Move preprocessor macros in a separate file 2013-12-29 22:52:04 +01:00
base64.c base64-test: Remove posibility of returning restricted exit codes 2013-10-25 11:06:32 +01:00
base64.h
blowfish.c Drop pointless directory name prefixes from #includes in the current dir 2013-09-10 12:38:41 +02:00
blowfish.h
bswap.h aarch64: bswap inline assembly 2014-01-14 22:19:38 +01:00
buffer_internal.h AVBuffer: add a new API for buffer pools 2013-03-08 07:33:28 +01:00
buffer.c AVBuffer: add a new API for buffer pools 2013-03-08 07:33:28 +01:00
buffer.h avutil: doxy: Small clarification for av_buffer_create() 2013-04-30 13:33:43 -04:00
channel_layout.c Add missing #includes for *INT64_MAX and *INT64_C 2013-11-23 21:55:52 +01:00
channel_layout.h lavu: Add values for various Dolby flags to the AVMatrixEncoding enum. 2014-01-05 16:41:56 +01:00
colorspace.h
common.h Add missing #includes for *INT64_MAX and *INT64_C 2013-11-23 21:55:52 +01:00
cpu_internal.h aarch64: add cpuflags support for NEON and VFP 2014-01-15 12:05:09 +01:00
cpu.c x86: add detection for Bit Manipulation Instruction sets 2014-02-23 15:29:36 +01:00
cpu.h x86: add detection for Bit Manipulation Instruction sets 2014-02-23 15:29:36 +01:00
crc.c crc: Move static data table from header to .c file 2013-02-11 16:48:44 +01:00
crc.h crc: av_crc() parameter names should match between .c, .h and doxygen 2012-11-16 10:38:23 +01:00
des.c Drop pointless directory name prefixes from #includes in the current dir 2013-09-10 12:38:41 +02:00
des.h
dict.c dict: K&R formatting cosmetics 2014-03-07 01:19:22 +01:00
dict.h doxy: Format @code blocks so they render properly 2014-02-04 22:09:47 +01:00
downmix_info.c lavu: add AV_FRAME_DATA_DOWNMIX_INFO side data type. 2014-02-15 22:24:53 +01:00
downmix_info.h lavu: add AV_FRAME_DATA_DOWNMIX_INFO side data type. 2014-02-15 22:24:53 +01:00
error.c avutil: Add AVERROR_EXPERIMENTAL 2012-10-21 22:38:21 +02:00
error.h error.h: Do not circularly depend on avutil.h 2013-12-25 00:12:05 +01:00
eval.c avutil: remove timer.h include from internal.h 2014-01-25 21:50:20 +01:00
eval.h
fifo.c fifo: K&R formatting cosmetics 2013-07-06 14:28:06 +02:00
fifo.h lavu: remove disabled FF_API_AV_FIFO_PEEK cruft 2012-10-23 07:33:05 +02:00
file_open.c libavutil: Move avpriv_open to a new file, file_open.c 2013-08-10 00:53:33 +03:00
file.c libavutil: Move avpriv_open to a new file, file_open.c 2013-08-10 00:53:33 +03:00
file.h
float_dsp.c float_dsp: Replace arch optimization ifdefs by if cascade 2014-03-22 14:11:22 +01:00
float_dsp.h aarch64: float_dsp NEON assembler 2014-03-18 22:56:07 +01:00
frame.c frame: add a function for removing side data from a frame 2014-03-24 06:07:51 +01:00
frame.h frame: add a function for removing side data from a frame 2014-03-24 06:07:51 +01:00
hmac.c avutil: Add av_cold attributes to init functions missing them 2013-05-04 22:48:05 +02:00
hmac.h lavu: Add an API for calculating HMAC (RFC 2104) 2013-01-15 11:54:19 +02:00
imgutils.c pixdesc: rename PIX_FMT_* flags to AV_PIX_FMT_FLAG_* 2013-05-15 07:46:51 +02:00
imgutils.h avutil: Rename ff_set_systematic_pal2() ---> avpriv_set_systematic_pal2() 2012-10-13 19:59:20 +02:00
internal.h avutil: remove timer.h include from internal.h 2014-01-25 21:50:20 +01:00
intfloat.h
intmath.c lavu: add av_ctz() for trailing zero bit count 2012-11-05 15:32:29 -05:00
intmath.h lavu: add av_ctz() for trailing zero bit count 2012-11-05 15:32:29 -05:00
intreadwrite.h intreadwrite: Add AV_COPYxxU macros for copying to/from unaligned addresses 2012-10-23 16:54:08 +02:00
lfg.c
lfg.h
libavutil.v Revert "avutil: make some tables visible again" 2012-10-23 07:33:05 +02:00
libm.h libm: add fallbacks for various single-precision functions 2012-10-23 12:00:21 +01:00
lls.c x86: lpc: simd av_update_lls 2013-06-29 13:23:57 +02:00
lls.h x86: lpc: simd av_update_lls 2013-06-29 13:23:57 +02:00
log2_tab.c
log.c log: Unbreak windows support 2014-04-03 23:43:47 +02:00
log.h log: Document AV_LOG_C usage 2014-04-03 18:43:24 +02:00
lzo.c lzo: fix overflow checking in copy_backptr() 2013-03-15 12:52:31 +01:00
lzo.h avutil: Move memcpy_backptr() to mem.c 2012-10-25 11:36:57 +02:00
macros.h lavu: Move preprocessor macros in a separate file 2013-12-29 22:52:04 +01:00
Makefile Add replaygain side data type and code for parsing replaygain tags. 2014-03-24 06:07:51 +01:00
mathematics.c mathematics: remove asserts from av_rescale_rnd() 2014-01-03 16:39:30 +01:00
mathematics.h
md5.c Remove pointless #undefs of previously forbidden functions. 2012-12-04 21:40:22 +01:00
md5.h
mem.c Move av_fast_{m,re}alloc from lavc to lavu. 2013-11-14 09:42:22 +01:00
mem.h Move av_fast_{m,re}alloc from lavc to lavu. 2013-11-14 09:42:22 +01:00
old_pix_fmts.h Deprecate obsolete XvMC hardware decoding support 2013-11-13 21:07:45 +01:00
opt.c AVOptions: add flags for read/read-only options 2014-02-19 21:52:17 +01:00
opt.h AVOptions: add flags for read/read-only options 2014-02-19 21:52:17 +01:00
parseutils.c parseutils: fix discarding const attribute warning 2013-12-12 16:10:14 +01:00
parseutils.h
pixdesc.c lavu: add missing formats to av_pix_fmt_swap_endianness 2014-04-02 00:27:22 +02:00
pixdesc.h Use correct Doxygen syntax 2013-10-03 17:53:51 +02:00
pixfmt.h RGBA64 pixel formats 2014-03-16 23:05:47 +01:00
random_seed.c random_seed: Rewrite the generic clock() based seed code 2014-01-06 18:53:58 +02:00
random_seed.h
rational.c Remove commented-out #includes 2013-05-15 23:01:21 +02:00
rational.h
rc4.c
rc4.h
replaygain.h replaygain: correctly parse peak values 2014-04-04 17:40:19 +02:00
samplefmt.c samplefmt: avoid integer overflow in av_samples_get_buffer_size() 2014-02-04 12:32:47 -05:00
samplefmt.h lavu: remove disabled FF_API_GET_BITS_PER_SAMPLE_FMT cruft 2012-10-23 07:33:05 +02:00
sha.c avutil: Add av_cold attributes to init functions missing them 2013-05-04 22:48:05 +02:00
sha.h
stereo3d.c avframe: add codec-independent stereoscopic metadata 2013-12-09 16:02:43 +01:00
stereo3d.h apidoc: fix warning from stereo3d.h 2013-12-17 09:34:08 +01:00
time.c Drop pointless directory name prefixes from #includes in the current dir 2013-09-10 12:38:41 +02:00
time.h
timer.h timer: use mach_absolute_time as high resolution clock on darwin 2014-03-09 00:45:34 +01:00
tree.c tree-test: Don't return restricted exit codes 2013-10-24 10:59:26 +01:00
tree.h tree.h: K&R formatting and typo cosmetics 2013-07-31 18:14:08 +02:00
utils.c lavu: Move preprocessor macros in a separate file 2013-12-29 22:52:04 +01:00
version.h replaygain: correctly parse peak values 2014-04-04 17:40:19 +02:00
xtea.c Drop pointless directory name prefixes from #includes in the current dir 2013-09-10 12:38:41 +02:00
xtea.h