f6bb2cd1b0 
								
							
								 
							
						 
						
							
							
								
								swresample/resample: fix invert_initial_buffer() after flush  
							
							Fixes: asan_heap-uaf_2071250_7_139.ogg
Fixes: assertion failure
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						11 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								857cd1f33b 
								
							
								 
							
						 
						
							
							
								
								swr: initialize only the necessary resample dsp functions  
							
							Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						11 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								b5f0eac068 
								
							
								 
							
						 
						
							
							
								
								swr: rename swresample_dsp init functions to swri_resample_dsp  
							
							The swresample_ prefix is not for internal functions
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						11 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								ddb7b4435a 
								
							
								 
							
						 
						
							
							
								
								swr: move dst_size == 0 handling outside DSP function.  
							
							Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						11 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								cbf21628a5 
								
							
								 
							
						 
						
							
							
								
								swr: remove div/mod from DSP functions.  
							
							Also fix a bug with resample_compensation resetting dst_incr.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						11 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								7128a35f8c 
								
							
								 
							
						 
						
							
							
								
								swr: split out DSP functions.  
							
							DSP bits of swri_resample go into their own mini-DSP functions; DSP
init goes from a per-call branch in multiple_resample to a proper
DSP init routine; x86 bits go into x86/; swri_resample() moves out of
resample_template.c into resample.c because it's independent of DSP
code or sample type; multiple_resample() is simplified.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						11 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								4411928c64 
								
							
								 
							
						 
						
							
							
								
								swresample/resample: replace assert by av_assert  
							
							Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						11 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								b785c62681 
								
							
								 
							
						 
						
							
							
								
								swr: handle initial negative sample index outside DSP function.  
							
							Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						11 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								f341340552 
								
							
								 
							
						 
						
							
							
								
								swr: handle 64bit overflow check in multiple_resample().  
							
							Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						11 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								cdfd9717ed 
								
							
								 
							
						 
						
							
							
								
								swr: move compensation_distance handling to swri_resample caller.  
							
							I think there's an off-by-one in terms of the switchpoint where we
switch from dst_incr to ideal_dst_incr, I don't think that's a massive
issue, but just be aware of that. It's probably trivial to prevent but
I don't care.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
I could not reproduce any off by 1 error, results are bit exact (michael) 
							
						 
						11 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								a9bf713d35 
								
							
								 
							
						 
						
							
							
								
								swresample: add swri_resample_float_avx  
							
							Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						11 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								cdac3ab59f 
								
							
								 
							
						 
						
							
							
								
								swresample: add swri_resample_double_sse2  
							
							Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						11 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								5027f39712 
								
							
								 
							
						 
						
							
							
								
								swresample/resample: use av_malloc_array() where appropriate  
							
							Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						11 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								f9158b01d0 
								
							
								 
							
						 
						
							
							
								
								swresample/resample: Limit filter length  
							
							Related to CID1197063
The limit choosen is arbitrary and much larger than what makes sense.
It avoids the need for checking arithmetic operations with the length for overflow
Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						11 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								32291ba6ea 
								
							
								 
							
						 
						
							
							
								
								swresample: add swri_resample_float_sse  
							
							At least two times faster than the C version.
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						11 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								7c8bf09edd 
								
							
								 
							
						 
						
							
							
								
								swresample: change COMMON_CORE_INT16 asm from SSSE3 to SSE2  
							
							pshuf+paddd is slightly faster than phaddd.
The real gain is in pre-ssse3 processors like AMD K8 and K10, which get
a big boost in performance compared to the mmxext version
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						11 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								9078b40d35 
								
							
								 
							
						 
						
							
							
								
								swresample: replace 2 av_free() by av_freep()  
							
							avoids leaving stale pointers in memory
Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						12 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								91debec976 
								
							
								 
							
						 
						
							
							
								
								swr/resample: fix filter rounding and cliping for s32  
							
							Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						12 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								f9abeecd94 
								
							
								 
							
						 
						
							
							
								
								swr/ build_filter: use av_calloc() fix buffer overflow  
							
							Fixes integer & buffer overflow
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						12 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								ac25b31ede 
								
							
								 
							
						 
						
							
							
								
								lswr: Improve default resampler's default parameters  
							
							After making some blind tests on a small collection of music
samples for home usage. It turned out that the default cutoff
was too low.
The impact of filter_size was not clearly distinguishable (the
results were on the edge) with the music samples but turned out
to be clearly audible in some synthetic samples.
Thanks to Daniel for helping out with the listening tests.
Signed-off-by: Alexander Strasser <eclipse7@gmx.net> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								801b315729 
								
							
								 
							
						 
						
							
							
								
								swr: Add SOX resampler support  
							
							Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								41049d07f2 
								
							
								 
							
						 
						
							
							
								
								swr: add a lowpass default so that each Resampler can have its own default.  
							
							Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								ae5a55e77a 
								
							
								 
							
						 
						
							
							
								
								swr: move flush into Resampler  
							
							Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								5a5d70748c 
								
							
								 
							
						 
						
							
							
								
								swr: Add API to make resample engine selectable.  
							
							Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								8f42b09604 
								
							
								 
							
						 
						
							
							
								
								swr/resample: fix SSSE3 included unconditionally.  
							
							10l Regression since 8ea88339 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								8ea8833979 
								
							
								 
							
						 
						
							
							
								
								swr/resample: move templating parameters to template itself.  
							
							It has various benefits such as allowing some refactoring, clarifying
the code in the inclusion part, and making the template understandable
in standalone.
This commit is based on the templating method used by Justin Ruggles for
libavresample. 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								7df9f595c9 
								
							
								 
							
						 
						
							
							
								
								swri_resample_init: unsupported sample formats are an internal error.  
							
							This condition cannot happen.
Fixes CID733802
Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								9d89d1d484 
								
							
								 
							
						 
						
							
							
								
								swr/resample: mark mm_flags as potentially unused  
							
							They are unused when asm is disabled
Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								070b0e1c77 
								
							
								 
							
						 
						
							
							
								
								libswr: remove redundant ARCH_X86, MMX* implicates X86  
							
							Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								5f256f9df2 
								
							
								 
							
						 
						
							
							
								
								swsresample: Fix unprotected inline asm  
							
							Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								4814326533 
								
							
								 
							
						 
						
							
							
								
								swr/resample: update SSSE3 flag to new name  
							
							Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								4ec03d1386 
								
							
								 
							
						 
						
							
							
								
								bessel: check that the function terminates as expected by av_assert2().  
							
							A clear abort is better than wrong output and a possible crash.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								7e15df7551 
								
							
								 
							
						 
						
							
							
								
								swr: resampling: add filter type and Kaiser window beta to AVOptions  
							
							
								
							
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								51d2578348 
								
							
								 
							
						 
						
							
							
								
								swr: fix MMX resample code, add emms  
							
							Fixes Ticket1495
Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								782763ed2b 
								
							
								 
							
						 
						
							
							
								
								swr: fix compilation with ancient toolchain that doesnt support SSSE3  
							
							Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								4ccf6e3971 
								
							
								 
							
						 
						
							
							
								
								swr: MMX2 & SSSE3 int16 resample core  
							
							about 4 times faster
Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								0c142e4cda 
								
							
								 
							
						 
						
							
							
								
								swr: introduce filter_alloc in preparation of SIMD resample optimisations  
							
							Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								4def5d2b64 
								
							
								 
							
						 
						
							
							
								
								swr: add swr_get_delay() to find the exact delay the swresampler introduces.  
							
							Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								edbde52226 
								
							
								 
							
						 
						
							
							
								
								swr: change sample format representation so as to maintain the planer/packed distinction.  
							
							Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								f9a2c5bc07 
								
							
								 
							
						 
						
							
							
								
								swr: simplify code by using av_get_bytes_per_sample()  
							
							Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								24ab1abfb6 
								
							
								 
							
						 
						
							
							
								
								resample: support double precission resampling  
							
							This commit is dedicated to the audiophiles who can hear it when a
needle is dropped on the moon.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								7f1ae79d38 
								
							
								 
							
						 
						
							
							
								
								swr: support float & int32 in the resampler  
							
							Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								2f0801527d 
								
							
								 
							
						 
						
							
							
								
								resample: update copyright years, they where incorrect.  
							
							Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								7e592379d9 
								
							
								 
							
						 
						
							
							
								
								resample: Fix boundary handling with fragments.  
							
							Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						13 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								741aca7936 
								
							
								 
							
						 
						
							
							
								
								libswresample: introduce int swr_set_compensation() instead of void swr_compensate()  
							
							The new version returns AVERROR(EINVAL) is the specified paramters are invalid,
and also creates the resampler if none was used so far.
Signed-off-by: Marton Balint <cus@passwd.hu>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						14 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								af1eb298c1 
								
							
								 
							
						 
						
							
							
								
								swr: use int16_t instead of short for resampling.  
							
							
								
							
							
						 
						14 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								c4deb90cfa 
								
							
								 
							
						 
						
							
							
								
								swr: use "swri_" prefix instead of "swr_" for the private API.  
							
							
								
							
							
						 
						14 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								64db5a1a57 
								
							
								 
							
						 
						
							
							
								
								swr: drop 'AV' prefix from ResampleContext.  
							
							This type/struct is not part of the public API. 
							
						 
						14 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								7e516a11ca 
								
							
								 
							
						 
						
							
							
								
								swr: rename resample2 to resample.  
							
							
								
							
							
						 
						14 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								1b9ca38d9d 
								
							
								 
							
						 
						
							
							
								
								resample2: fix potential overflow  
							
							Signed-off-by: Michael Niedermayer <michaelni@gmx.at> 
							
						 
						14 years ago