1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-02 03:06:28 +02:00
Commit Graph

292 Commits

Author SHA1 Message Date
Michael Niedermayer
c62fea7574 Merge commit 'fbc0b8659967ea54a8472b5f795270d38bb085dd'
* commit 'fbc0b8659967ea54a8472b5f795270d38bb085dd':
  lavr: Do not change the sample format for mono audio

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-04 02:49:48 +02:00
Justin Ruggles
fbc0b86599 lavr: Do not change the sample format for mono audio
This treats mono as planar internally within libavresample rather
than changing the sample format.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2014-08-03 23:13:26 +02:00
Michael Niedermayer
bdb2e80e88 Merge commit 'b2d45654220503224aa94e78cdff19ec624e9342'
* commit 'b2d45654220503224aa94e78cdff19ec624e9342':
  avresample: Add avresample_get_out_samples

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-29 01:23:22 +02:00
Luca Barbato
b2d4565422 avresample: Add avresample_get_out_samples
Utility function to get the upper bound on the number of samples the
resampler would output.
2014-05-28 22:04:56 +02:00
Michael Niedermayer
3d7218d932 Merge commit '449511740f06a4675b0066730fa45cdb764ffafc'
* commit '449511740f06a4675b0066730fa45cdb764ffafc':
  build: handle library dependencies in configure

Conflicts:
	common.mak
	configure
	libavdevice/Makefile
	libavfilter/Makefile

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-13 22:40:32 +02:00
Janne Grunau
449511740f build: handle library dependencies in configure
Instead of setting FFLIBS in each library Makefile configure
exports FFLIBS-$library in config.mak.
2014-05-13 20:02:01 +02:00
Michael Niedermayer
e32fc9b45b Merge commit 'a24a252709dd38f12aa4929ce4981f87091a5113'
* commit 'a24a252709dd38f12aa4929ce4981f87091a5113':
  aarch64: NEON optimized FIR audio resampling

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-25 01:19:27 +02:00
Michael Niedermayer
26953ed2e3 Merge commit 'cae8df78759c2e69257f7fe58842f34c0d98a7ec'
* commit 'cae8df78759c2e69257f7fe58842f34c0d98a7ec':
  lavr: define ResampleContext in resample.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-25 01:17:15 +02:00
Janne Grunau
a24a252709 aarch64: NEON optimized FIR audio resampling
Optimized for the default filter length 16.

30% faster opus silk decoding.
2014-04-24 18:28:26 +02:00
Janne Grunau
cae8df7875 lavr: define ResampleContext in resample.h
Required for arch optimized resampling.
2014-04-24 18:28:26 +02:00
Michael Niedermayer
96a4d0c1c3 Merge commit 'f4d5a2cc35fcdf06ec031fabe8b0710e995fe924'
* commit 'f4d5a2cc35fcdf06ec031fabe8b0710e995fe924':
  aarch64: NEON float to s16 audio conversion

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-22 23:33:07 +02:00
Janne Grunau
f4d5a2cc35 aarch64: NEON float to s16 audio conversion 2014-04-22 19:35:41 +02:00
Michael Niedermayer
11d187b377 Merge commit '21d8f4da91673051ad7055cf63d989488a56368e'
* commit '21d8f4da91673051ad7055cf63d989488a56368e':
  resample: remove an unneeded context variable

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-17 21:07:25 +02:00
Anton Khirnov
21d8f4da91 resample: remove an unneeded context variable 2014-04-17 20:08:19 +02:00
Michael Niedermayer
c11aa9d29a Merge commit 'ac976ed91e323754e9a84509873ebdb437372797'
* commit 'ac976ed91e323754e9a84509873ebdb437372797':
  lavr: allocate the resampling buffer with a positive size

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-13 14:33:42 +02:00
Michael Niedermayer
cbfa71d689 Merge commit 'f7c5fd81516fb7b186c64c66dc080e1139586226'
* commit 'f7c5fd81516fb7b186c64c66dc080e1139586226':
  resample: implement flushing

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-13 14:03:02 +02:00
Anton Khirnov
ac976ed91e lavr: allocate the resampling buffer with a positive size
This fixes cases where very few input samples (fewer than needed for one
output sample) are passed to lavr at the beginning.
CC:libav-stable@libav.org
2014-04-13 11:21:20 +02:00
Anton Khirnov
f7c5fd8151 resample: implement flushing 2014-04-13 11:15:45 +02:00
Michael Niedermayer
662a8d8827 Merge commit '254c95cdd1b669a722204a4a65974fc2523c8f83'
* commit '254c95cdd1b669a722204a4a65974fc2523c8f83':
  resample: split linear into its own function

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-11 20:39:04 +02:00
Michael Niedermayer
65088b925a Merge commit 'be394968c81019887ef996a78a526bdd85d1e216'
* commit 'be394968c81019887ef996a78a526bdd85d1e216':
  resample: add initial padding explicitly

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-11 20:38:38 +02:00
Michael Niedermayer
6d6bd16fce Merge commit 'eed752d61da332fb13e9893a175a90fed7b1d7d3'
* commit 'eed752d61da332fb13e9893a175a90fed7b1d7d3':
  resample: drop useless abs()

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-11 20:23:33 +02:00
Michael Niedermayer
fb7d64df7e Merge commit '3c84f6b5d20cd345fac706f8cfb70c55e541ffb5'
* commit '3c84f6b5d20cd345fac706f8cfb70c55e541ffb5':
  resample: reindent

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-11 19:34:31 +02:00
Michael Niedermayer
671f908657 Merge commit 'f20892eb67a7b4b5a3c080388a35a3380516a805'
* commit 'f20892eb67a7b4b5a3c080388a35a3380516a805':
  resample: split the nearest neighbour path into a separate function pointer

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-11 19:34:03 +02:00
Michael Niedermayer
c04961fa0f Merge commit 'b9dea23766f52b8e059e72d34980bb7b456efe8f'
* commit 'b9dea23766f52b8e059e72d34980bb7b456efe8f':
  resample: fix avresample_get_delay() return value

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-11 19:24:03 +02:00
Anton Khirnov
254c95cdd1 resample: split linear into its own function 2014-04-11 16:34:02 +02:00
Anton Khirnov
be394968c8 resample: add initial padding explicitly
This simplifies the code, since we do not have to deal with a possibly
negative source index anymore.
2014-04-11 16:33:46 +02:00
Anton Khirnov
eed752d61d resample: drop useless abs()
negative sample_index is handled in the block above.
2014-04-11 16:28:11 +02:00
Anton Khirnov
3c84f6b5d2 resample: reindent 2014-04-11 16:27:22 +02:00
Anton Khirnov
f20892eb67 resample: split the nearest neighbour path into a separate function pointer 2014-04-11 16:26:36 +02:00
Anton Khirnov
b9dea23766 resample: fix avresample_get_delay() return value
The correct "next" input sample is not the first sample of the
resampling buffer, but the center sample of the filter_length-sized
block at the beginning.

CC:libav-stable@libav.org
2014-04-11 16:21:25 +02:00
Michael Niedermayer
ebb21887b8 Merge commit '01c5779f56cf708e6cb88b11cfdc248cae7e2ee8'
* commit '01c5779f56cf708e6cb88b11cfdc248cae7e2ee8':
  x86: Drop some unnecessary YASM ifdefs

Conflicts:
	libavfilter/x86/vf_yadif_init.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-05 19:16:39 +02:00
Diego Biurrun
01c5779f56 x86: Drop some unnecessary YASM ifdefs
Dead code elimination is enough to avoid undefined references in these cases.
2014-04-04 19:08:05 +02:00
Michael Niedermayer
0371eaebcd Merge commit 'aba70bb5387f12dfa5e6cd8cb861c9c7e668151f'
* commit 'aba70bb5387f12dfa5e6cd8cb861c9c7e668151f':
  Add missing headers to make template files compile (more) standalone

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-26 14:50:55 +01:00
Diego Biurrun
aba70bb538 Add missing headers to make template files compile (more) standalone 2014-03-26 04:31:27 -07:00
Michael Niedermayer
246eae98cf Merge remote-tracking branch 'qatar/master'
* qatar/master:
  lavr: return an error if a avresample_open() is called on an open context

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-02-22 21:12:02 +01:00
Michael Niedermayer
5367c0be62 Merge commit '7e86c27b4ee9e5a3fbe6cf5249b9d918b2a5e731'
* commit '7e86c27b4ee9e5a3fbe6cf5249b9d918b2a5e731':
  lavr: add a function for checking whether AVAudioResampleContext is open

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-02-22 21:06:02 +01:00
Anton Khirnov
1db03a6864 lavr: return an error if a avresample_open() is called on an open context 2014-02-22 20:53:09 +01:00
Anton Khirnov
7e86c27b4e lavr: add a function for checking whether AVAudioResampleContext is open 2014-02-22 20:52:36 +01:00
Michael Niedermayer
b08f554fdc Merge commit '76a75c523cd3c63560185394a0a5cd7249db962a'
* commit '76a75c523cd3c63560185394a0a5cd7249db962a':
  lavr: mix front center channel as indicated in the ATSC A/52 specification.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-02-08 18:38:17 +01:00
Tim Walker
76a75c523c lavr: mix front center channel as indicated in the ATSC A/52 specification.
When mixing 3 front channels into 2, the center channel is mixed into left and right with the center mix level, not -3dB.
2014-02-08 13:42:55 +01:00
Michael Niedermayer
bf90abe1dd Merge commit '5bcbb516f2ff45290ef7995b081762e668693672'
* commit '5bcbb516f2ff45290ef7995b081762e668693672':
  arm: Add X() around all references to extern symbols

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-02-08 00:48:26 +01:00
Martin Storsjö
5bcbb516f2 arm: Add X() around all references to extern symbols
Don't rely on the fact that an unprefixed label currently exists.

Signed-off-by: Martin Storsjö <martin@martin.st>
2014-02-07 15:13:58 +02:00
Michael Niedermayer
949adce125 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  aarch64: port neon clobber test from arm

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-15 15:49:22 +01:00
Janne Grunau
fe96769bed aarch64: port neon clobber test from arm 2014-01-15 12:31:07 +01:00
Michael Niedermayer
9ace154186 Merge commit '99e20125232d40ea239a5b54d26bbfe526506114'
* commit '99e20125232d40ea239a5b54d26bbfe526506114':
  x86/arm: Add clobber tests to libavresample

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-13 14:36:55 +01:00
Martin Storsjö
99e2012523 x86/arm: Add clobber tests to libavresample
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-01-13 14:13:27 +02:00
Michael Niedermayer
781fd58838 Merge commit 'cc976a75dffa148d655b52604331679ff669e8a2'
* commit 'cc976a75dffa148d655b52604331679ff669e8a2':
  audio_mix: print (SKIP) instead of 0.0 for matrix columns removed along with output zeroing

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-04 02:30:07 +01:00
Michael Niedermayer
4b8bc6d2b0 Merge commit 'fc6a3ef40d34ce8443ae57c2452f3f273d7d4891'
* commit 'fc6a3ef40d34ce8443ae57c2452f3f273d7d4891':
  audio_mix: fix zeroing output channels in certain cases

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-04 02:16:33 +01:00
Michael Niedermayer
fadec4f6db Merge commit '3d95d27376e59de14f984e7a22a52e066d85df35'
* commit '3d95d27376e59de14f984e7a22a52e066d85df35':
  audio_mix: initialize the data pointers to NULL

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-04 02:11:33 +01:00
Anton Khirnov
cc976a75df audio_mix: print (SKIP) instead of 0.0 for matrix columns removed along with output zeroing 2014-01-03 16:43:25 +01:00
Anton Khirnov
fc6a3ef40d audio_mix: fix zeroing output channels in certain cases
Specifically, when the corresponding input channel exists and its matrix
column is all-zero (which is necessary for zeroing the output), the
matrix column must be removed from the matrix.

This is not done currently, so the mixing code would end up using
uninitialized pointers from stack.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
2014-01-03 16:42:46 +01:00
Anton Khirnov
3d95d27376 audio_mix: initialize the data pointers to NULL
This should make it easier to catch problems where some of those
pointers are used uninitialized, since reading from NULL should always
crash, while random numbers from stack can turn out to be valid
pointers, so random memory may be silently overwritten.
2014-01-03 16:42:23 +01:00
Michael Niedermayer
25b243759c Merge commit 'b83d1ee3b41cfe8357836e2582104db2f3364cb0'
* commit 'b83d1ee3b41cfe8357836e2582104db2f3364cb0':
  avutil: Move library version related macros to version.h

Conflicts:
	libavcodec/version.h
	libavresample/version.h
	libavutil/avutil.h
	libavutil/utils.c

See: 183117fed7
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-27 12:01:23 +01:00
Diego Biurrun
b83d1ee3b4 avutil: Move library version related macros to version.h
This is a more sensible place for these macros.
2013-12-26 19:05:22 +01:00
James Almer
22ef9cb46d avresample: Include libavutil/avutil.h in version.h
Should fix issues compiling lavr's Windows resource file.

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-06 22:13:20 +01:00
James Almer
56572787ae Add Windows resource file support for shared libraries
Originally written by James Almer <jamrial@gmail.com>

With the following contributions by Timothy Gu <timothygu99@gmail.com>

* Use descriptions of libraries from the pkg-config file generation function
* Use "FFmpeg Project" as CompanyName (suggested by Alexander Strasser)
* Use "FFmpeg" for ProductName as MSDN says "name of the product with which the
  file is distributed" [1].
* Use FFmpeg's version (N-xxxxx-gxxxxxxx) for ProductVersion per MSDN [1].
* Only build the .rc files when --enable-small is not enabled.

[1] http://msdn.microsoft.com/en-us/library/windows/desktop/aa381058.aspx

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-05 23:42:07 +01:00
Michael Niedermayer
ccdfa3e271 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Add missing #includes for *INT64_MAX and *INT64_C

Conflicts:
	ffmpeg.c
	ffmpeg_filter.c
	ffplay.c
	libavformat/assdec.c
	libavformat/avidec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-24 05:21:19 +01:00
Diego Biurrun
8f8bc92365 Add missing #includes for *INT64_MAX and *INT64_C 2013-11-23 21:55:52 +01:00
Michael Niedermayer
b96dddd344 Merge commit '211ca69b13eb0a127a9ef7e70ddaccdab125d1c5'
* commit '211ca69b13eb0a127a9ef7e70ddaccdab125d1c5':
  lavr: check that current_buffer is not NULL before using it

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-28 09:59:53 +01:00
Justin Ruggles
211ca69b13 lavr: check that current_buffer is not NULL before using it
Fixes a segfault during resampling when compiled with -DDEBUG.
Fixes all fate-lavr-resample tests with -DDEBUG.

CC:libav-stable@libav.org
2013-10-27 15:07:10 -04:00
Michael Niedermayer
9ac124c889 Merge commit '206895708ea2b464755d340e44501daf9a07c310'
* commit '206895708ea2b464755d340e44501daf9a07c310':
  x86inc: Remove our FMA4 support

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-14 15:54:23 +02:00
Michael Niedermayer
12ca544aa0 Merge commit '15748773bf33c110e6e2e9526c7ba5478274c74c'
* commit '15748773bf33c110e6e2e9526c7ba5478274c74c':
  avresample/x86: Switch operand order for mulps

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-14 15:37:26 +02:00
Derek Buitenhuis
206895708e x86inc: Remove our FMA4 support
This is so we can sync to x264's version of FMA4 support.

This partialy reverts commit 79687079a9.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2013-10-14 12:39:29 +01:00
Derek Buitenhuis
15748773bf avresample/x86: Switch operand order for mulps
With the forthcoming VEX instruction emulation, mulps
must have only the third operand point to memory, as
this is what vmulps expects.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2013-10-14 12:36:11 +01:00
Michael Niedermayer
830a567e96 Merge commit 'df6737a55f5dc7c0ae5272bc5fa6182836d5481c'
* commit 'df6737a55f5dc7c0ae5272bc5fa6182836d5481c':
  audio_mix: fix channel order in mix_1_to_2_fltp_flt_c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-13 06:48:35 +02:00
Anton Khirnov
df6737a55f audio_mix: fix channel order in mix_1_to_2_fltp_flt_c
CC:libav-stable@libav.org
2013-10-12 15:06:55 +02:00
Thilo Borgmann
d814a839ac Reinstate proper FFmpeg license for all files. 2013-08-30 15:47:38 +00:00
Michael Niedermayer
a8e963835a Merge commit 'b5a138652ff8a5b987d3e1191e67fd9f6575527e'
* commit 'b5a138652ff8a5b987d3e1191e67fd9f6575527e':
  Give less generic names to global library option arrays

Conflicts:
	libavcodec/options_table.h
	libavfilter/avfilter.c
	libavformat/options_table.h
	libswscale/options.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-03 09:16:36 +02:00
Diego Biurrun
b5a138652f Give less generic names to global library option arrays 2013-08-02 19:19:02 +02:00
Michael Niedermayer
46ad2d9e44 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  miscellaneous typo fixes

Conflicts:
	configure
	libavformat/avisynth.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-26 11:12:11 +02:00
Diego Biurrun
03039f4c8c miscellaneous typo fixes 2013-07-25 19:43:32 +02:00
Michael Niedermayer
9d01bf7d66 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Consistently use "cpu_flags" as variable/parameter name for CPU flags

Conflicts:
	libavcodec/x86/dsputil_init.c
	libavcodec/x86/h264dsp_init.c
	libavcodec/x86/hpeldsp_init.c
	libavcodec/x86/motion_est.c
	libavcodec/x86/mpegvideo.c
	libavcodec/x86/proresdsp_init.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-18 09:53:47 +02:00
Diego Biurrun
3ac7fa81b2 Consistently use "cpu_flags" as variable/parameter name for CPU flags 2013-07-18 00:31:35 +02:00
Michael Niedermayer
20f75a810c Merge commit '006ec64877fb638de4b15ae5fd969e22bd0f60ca'
* commit '006ec64877fb638de4b15ae5fd969e22bd0f60ca':
  lavr doxy: add version.h to the lavr group
  lavc doxy: add avcodec.h to the libavcodec group.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-18 11:25:58 +02:00
Anton Khirnov
006ec64877 lavr doxy: add version.h to the lavr group 2013-05-17 20:27:48 +02:00
Michael Niedermayer
b507c00dc0 Merge commit 'e445647b4fdf481b13b2743b303d84de4f43bedd'
* commit 'e445647b4fdf481b13b2743b303d84de4f43bedd':
  avresample: Add av_cold attributes to init functions missing them

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-05 11:50:37 +02:00
Diego Biurrun
e445647b4f avresample: Add av_cold attributes to init functions missing them 2013-05-04 21:10:05 +02:00
Michael Niedermayer
63a97d5674 Merge commit 'b6649ab5037fb55f78c2606f3d23cea0867cdeaa'
* commit 'b6649ab5037fb55f78c2606f3d23cea0867cdeaa':
  cosmetics: Remove unnecessary extern keywords from function declarations

Conflicts:
	libswscale/x86/swscale.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-28 11:20:41 +01:00
Diego Biurrun
b6649ab503 cosmetics: Remove unnecessary extern keywords from function declarations 2013-03-27 14:21:45 +01:00
Michael Niedermayer
5f8f9dc436 Merge commit '45235ac488363e3360bf2f2275102d1ec66eba0f'
* commit '45235ac488363e3360bf2f2275102d1ec66eba0f':
  configure: Move x11grab option to a more suitable place in the help output
  lavr: allow setting internal_sample_fmt option by string
  lavr: Add "resample_cutoff" option as a duplicate of "cutoff"

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-24 17:45:06 +01:00
Justin Ruggles
b2eea615c0 lavr: allow setting internal_sample_fmt option by string 2013-02-23 17:07:54 -05:00
Justin Ruggles
50f4337a2f lavr: Add "resample_cutoff" option as a duplicate of "cutoff"
Avoids an option name conflict with libavcodec, which is needed in order
to work properly with avconv.
2013-02-23 17:07:54 -05:00
Michael Niedermayer
845fa2f5c9 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  lavr: fix mixing matrix reduction when normalization is disabled
  lavr: fix matrix reduction for upmixing in certain cases
  lavr: cosmetics: reindent

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-13 12:58:29 +01:00
Michael Niedermayer
91043de825 Merge commit '1647da89dd8ac09a55c111589f7a30d7e6b87d90'
* commit '1647da89dd8ac09a55c111589f7a30d7e6b87d90':
  lavr: make sure that the mix function is reset even if no mixing will be done
  lavr: print out the mix matrix in ff_audio_mix_set_matrix()
  ws-snd1: decode directly to the user-provided AVFrame
  wmavoice: decode directly to the user-provided AVFrame

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-13 12:54:08 +01:00
Justin Ruggles
157542ebc1 lavr: fix mixing matrix reduction when normalization is disabled
In some cases when an input contributes fully to the corresponding
output, other inputs may also contribute to the same output. This is the
case, for example, for the default 5.1 to stereo downmix matrix without
normalization.
2013-02-12 13:41:13 -05:00
Justin Ruggles
600b4c973f lavr: fix matrix reduction for upmixing in certain cases
Do not skip an output if the corresponding input contributes to other output
channels.
2013-02-12 13:41:13 -05:00
Justin Ruggles
a3735bb92a lavr: cosmetics: reindent 2013-02-12 13:41:13 -05:00
Justin Ruggles
1647da89dd lavr: make sure that the mix function is reset even if no mixing will be done
If the matrix reduction ends up with no mixing matrix needed, we need to still
reset the mix function accordingly and log the info to the user.
2013-02-12 13:41:09 -05:00
Justin Ruggles
646831e697 lavr: print out the mix matrix in ff_audio_mix_set_matrix()
This will print the new matrix if it is set after initialization.
2013-02-12 13:35:04 -05:00
Michael Niedermayer
8ac0d95bd3 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  h264: avoid pointless copying of ref lists
  lavr: always reset mix function names and pointers in mix_function_init()
  lavr: call mix_function_init() in ff_audio_mix_set_matrix()
  fate: update ref after rv30_loop_filter fix
  rv30: fix masking in rv30_loop_filter()

Conflicts:
	tests/ref/fate/filter-delogo
	tests/ref/fate/rv30

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-18 13:54:38 +01:00
Justin Ruggles
b90632d596 lavr: always reset mix function names and pointers in mix_function_init()
CC: libav-stable@libav.org
2013-01-17 19:27:01 -05:00
Justin Ruggles
f07ef2d9c9 lavr: call mix_function_init() in ff_audio_mix_set_matrix()
This is needed if a custom matrix is set by the user after opening the
AVAudioResampleContext because the matrix channel count can change if
different mixing coefficients are used.

CC:libav-stable@libav.org
2013-01-17 19:27:01 -05:00
Michael Niedermayer
4765f63538 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  xan: Convert to bytestream2
  oggenc: add a page_duration option and deprecate the pagesize option
  x86: lavr: add SSE2/AVX dither_int_to_float()

Conflicts:
	libavcodec/xan.c
	libavformat/oggenc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-09 12:30:14 +01:00
Michael Niedermayer
75afbe2ab4 Merge commit '1fb8f6a44f06e48386450fe0363aefc02583d24a'
* commit '1fb8f6a44f06e48386450fe0363aefc02583d24a':
  x86: lavr: add SSE2 quantize() for dithering
  doc/APIchanges: fill in missing dates and hashes.
  rtpdec_vp8: Request a keyframe if RTP packets are lost

Conflicts:
	doc/APIchanges

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-09 12:14:56 +01:00
Justin Ruggles
1fb8f6a44f x86: lavr: add SSE2 quantize() for dithering 2013-01-08 14:52:43 -05:00
Justin Ruggles
a6a3164b13 x86: lavr: add SSE2/AVX dither_int_to_float() 2013-01-08 14:52:43 -05:00
Michael Niedermayer
48d30f6733 Merge commit '8729698d50739524665090e083d1bfdf28235724'
* commit '8729698d50739524665090e083d1bfdf28235724':
  rtsp: Recheck the reordering queue if getting a new packet
  lavr: log channel conversion description for any-to-any functions
  lavr: mix: reduce the mixing matrix when possible
  lavr: cosmetics: reindent

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-08 13:05:13 +01:00
Michael Niedermayer
249fca3df9 Merge commit '074a00d192c0e749d677b008b337da42597e780f'
* commit '074a00d192c0e749d677b008b337da42597e780f':
  lavr: add a public function for setting a custom channel map
  lavr: typedef internal structs in internal.h
  doc: Extend commit message section

Conflicts:
	doc/APIchanges
	doc/developer.texi

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-08 12:56:41 +01:00
Justin Ruggles
7ff3fd7ae4 lavr: log channel conversion description for any-to-any functions 2013-01-07 21:49:07 -05:00
Justin Ruggles
074a00d192 lavr: add a public function for setting a custom channel map
This allows reordering, duplication, and silencing of input channels.
2013-01-07 21:49:06 -05:00