d4325b2fea
swr: Remember previously set int_sample_format from user
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2015-06-22 18:34:39 +02:00
0dd2790df5
swresample/swresample: Clear delayed_samples_fixup in clear_context()
...
This probably makes no difference but its more proper
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2015-06-22 18:34:39 +02:00
5de3a589f1
swresample/swresample: Print used int_sample_fmt
...
Suggested-by: wm4
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2015-06-21 18:12:56 +02:00
4977692461
swresample: Choose 16bit internally only if input and output is 16bit or less
...
or if no rematrix and no resampling is performed and the input is 16bit
note reampling and rematrix itself always use more than 16bit internally
the "internal" sampling format is the format between these steps
Its unlikely the difference from this commit is audible in any case
unless there is some bug either before or after the change.
but multiple people prefer this and it slightly improves the precission
of computations.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2015-06-21 17:33:46 +02:00
56f0fe6b84
swr: Fix ASSERT_LEVEL warning
...
Found-by: cehoyos
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2015-06-08 20:16:06 +02:00
c5a08956a3
swresample: fix initilaize/initialize typo
2015-06-06 12:16:18 +02:00
c3f87f7545
swresample/swresample: Cleanup on init failure.
...
This avoids leaks if the user doest call swr_close() after a failed init
Found-by: James Almer <jamrial@gmail.com >
Reviewed-by: James Almer <jamrial@gmail.com >
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2015-06-04 12:35:04 +02:00
cc17b43d8d
swresample: Add swr_get_out_samples()
...
Previous version reviewed-by: Pavel Koshevoy <pkoshevoy@gmail.com >
Previous version reviewed-by: wm4 <nfxjfg@googlemail.com >
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2015-06-04 05:37:32 +02:00
196b885a5f
swresample/dither: check memory allocation
...
check memory allocation in swri_get_dither()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2015-06-03 11:46:37 +02:00
02915602d9
swresample: Check the return value of resampler->init()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2015-06-03 01:05:19 +02:00
adb7372f74
swr: fix alignment issue caused by 8ch sse functions
...
Fix crash when doing 8 ch conversion from apps compiled with MSVS
Thanks to Ronald for giving this hint:
https://ffmpeg.org/pipermail/ffmpeg-devel/2015-May/173049.html
Reviewed-by: "Ronald S. Bultje" <rsbultje@gmail.com >
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2015-05-13 22:44:06 +02:00
3c77bb5f23
swresample: Check channel layouts and channels against each other and print human readable error messages
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2015-04-12 22:21:34 +02:00
80a28c7509
swresample: Allow reinitialization without ever setting channel layouts
2015-04-12 22:21:34 +02:00
d7b9cb2f7a
swresample: Allow reinitialization without ever setting channel counts
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2015-04-12 22:21:34 +02:00
1a10134e20
swresample/swresample: Use av_mallocz_array()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2015-03-30 23:24:33 +02:00
4d00860ac7
swresample: Add prefix to soxr_resampler
...
also move declaration to header
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2015-02-27 19:20:43 +01:00
649c158e8c
Add FFMPEG_VERSION into the binary libs
...
This simplifies identifying from which revision a binary of a lib came from
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-12-19 19:32:40 +01:00
e4f8a973aa
swresample: Fix swr_drop_output so it does not flush the buffers
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-11-04 17:17:23 +01:00
080c846f59
swresample: do not put multiple statements in one line
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-10-16 18:18:40 +02:00
6b347f519d
swresample/swresample: replace always true if() by av_assert0()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-10-06 01:29:15 +02:00
f9fefa499f
swresample/swresample: fix sample drop loop end condition
...
Fixes Ticket3985
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-10-06 01:29:06 +02:00
f4e814f787
swresample: check av_opt_set for failure in swr_alloc_set_opts()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-08-11 01:34:34 +02:00
05ff1a2c05
swresample/swresample: Treat mono as planar
...
This might in some cases improve performance.
Idea from: fbc0b86599
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-08-04 03:05:05 +02:00
37715b4594
swresample: split option table to a separate file
...
Signed-off-by: Timothy Gu <timothygu99@gmail.com >
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-07-06 03:45:46 +02:00
b785c62681
swr: handle initial negative sample index outside DSP function.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-06-14 14:36:18 +02:00
96cb4c8718
swresample: swr_close()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-05-15 18:27:23 +02:00
6c6e4dd139
swr: check that the context for swr_convert() has been initialized
...
Reviewed-by: ubitux
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-02-24 08:23:42 +01:00
a66be60888
swresample: add swr_is_initialized()
...
Idea-from/based-on: 7e86c27b4e
Reviewed-by: ubitux
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-02-24 08:23:22 +01:00
f284e2a58a
swresample: factorize clear_context() out
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-02-22 21:36:30 +01:00
334e2e2363
lavu,lavc,lswr: do not hardcode AV_SAMPLE_FMT_NB value when setting sample format max value
...
The constant may change in libavutil but the library may be compiled
against an older version, thus rejecting a value which is otherwise
supported by the new libavutil.
INT_MAX is used here to denote the max allowed value for a sample format.
The opt-test code is changed to provide a valid reference example.
2013-12-26 11:35:27 +01:00
a6af5da7a2
swresample: use the internal buffer for resampling the last few samples
...
Fixes out of array read
Fixes Ticket3193
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2013-12-04 20:40:42 +01:00
904c89ac1b
lswr/swresample: convert ocl and icl options to AV_OPT_TYPE_CHANNEL_LAYOUT
...
Improve interface flexibility. In particular makes it possible to set
channel layout through symbolic names using the av_opt_set() interface.
2013-10-17 18:09:54 +02:00
9078b40d35
swresample: replace 2 av_free() by av_freep()
...
avoids leaving stale pointers in memory
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2013-09-16 22:44:15 +02:00
e2b718464e
swresample: Make rematrix maxvalue user settable
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2013-07-22 03:23:54 +02:00
a9bbf59be7
cosmetics: Fix "dont" "wont" "doesnt" typos
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2013-06-29 02:31:16 +02:00
3289670142
swr: dont treat 32 and 24 as equal in simple copy check
...
Fixes dithering from 32 to 24 bit
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2013-06-05 03:06:34 +02:00
0804171104
swresample: set flags & description and add documentation for output_sample_bits
...
Allows users to actually use such option.
Signed-off-by: Paul B Mahol <onemda@gmail.com >
2013-06-04 21:57:25 +00:00
495bf1b685
swr: Fix dithering of s16 with SIMD
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2013-06-04 23:50:45 +02:00
35aaa306ac
swr: make the default of nopts for first_pts actually work
...
Fixes Ticket2210
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2013-02-25 04:39:26 +01:00
8b3affda87
swr: support a seperate output sample bits.
...
This avoids user apps having to mangle dither scale. for pcm24
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2013-02-24 20:31:56 +01:00
2abbe6d07a
swr: add duplicate cutoff for compatibility
...
Based on
commit 50f4337a2f
Author: Justin Ruggles <justin.ruggles@gmail.com >
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2013-02-24 20:31:56 +01:00
21cd905cd4
swr: check channel layouts before using them.
...
Fixes out of array accesses
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2013-02-13 17:50:24 +01:00
b5f544a0f9
swr: Dont use floats for S32->S32 when possible
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2013-02-04 04:11:46 +01:00
be989f9236
swr: reorder init code to make rematrix status available earlier
...
This also makes some other fields available earlier which may
be usefull one day
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2013-02-04 04:05:59 +01:00
167af704ea
swr: limit phase_shift to a less insane value.
...
This prevents potential crashes and out of memory issues if
the user manually sets such insane values.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2013-01-27 05:54:52 +01:00
00cae86754
swr: support first_pts
...
Trolled-by: Daemon404
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2013-01-21 00:52:14 +01:00
d676598f87
swr: fix handling of timestamps that cause multiple drops or silence injections
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2013-01-13 18:39:06 +01:00
a34aee4646
swr: limit buffer size for silence injection
...
This reduces memory usage for unreasonable large silence injections
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2013-01-13 16:04:41 +01:00
b481d09bd9
swr: limit buffer size for discarding.
...
This prevents insane memory usage in case of insane input values.
Untested due to lack of a testcase that causes such insane allocation
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2013-01-13 16:04:41 +01:00
db4e0ecaf0
swr: move silence buffer to context to avoid per use malloc/free
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2013-01-13 15:28:00 +01:00