mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-11-21 10:55:51 +02:00
swr: add noise_scale field to seperate it from the noise shaping scales
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
parent
6908ded20e
commit
ead3a2a37e
@ -24,7 +24,7 @@
|
||||
#include "noise_shaping_data.c"
|
||||
|
||||
void swri_get_dither(SwrContext *s, void *dst, int len, unsigned seed, enum AVSampleFormat noise_fmt) {
|
||||
double scale = s->dither.ns_scale;
|
||||
double scale = s->dither.noise_scale;
|
||||
#define TMP_EXTRA 2
|
||||
double *tmp = av_malloc((len + TMP_EXTRA) * sizeof(double));
|
||||
int i;
|
||||
@ -95,6 +95,7 @@ int swri_dither_init(SwrContext *s, enum AVSampleFormat out_fmt, enum AVSampleFo
|
||||
scale *= s->dither.scale;
|
||||
|
||||
s->dither.ns_pos = 0;
|
||||
s->dither.noise_scale= scale;
|
||||
s->dither.ns_scale = scale;
|
||||
s->dither.ns_scale_1 = 1/scale;
|
||||
memset(s->dither.ns_errors, 0, sizeof(s->dither.ns_errors));
|
||||
|
@ -54,6 +54,7 @@ struct DitherContext {
|
||||
enum SwrDitherType method;
|
||||
int dither_pos;
|
||||
float scale;
|
||||
float noise_scale; ///< Noise scale
|
||||
int ns_taps; ///< Noise shaping dither taps
|
||||
float ns_scale; ///< Noise shaping dither scale
|
||||
float ns_scale_1; ///< Noise shaping dither scale^-1
|
||||
|
Loading…
Reference in New Issue
Block a user