|
@@ -23,12 +23,15 @@
|
|
|
|
|
|
#include "noise_shaping_data.c"
|
|
|
|
|
|
-void swri_get_dither(SwrContext *s, void *dst, int len, unsigned seed, enum AVSampleFormat noise_fmt) {
|
|
|
+int swri_get_dither(SwrContext *s, void *dst, int len, unsigned seed, enum AVSampleFormat noise_fmt) {
|
|
|
double scale = s->dither.noise_scale;
|
|
|
#define TMP_EXTRA 2
|
|
|
double *tmp = av_malloc_array(len + TMP_EXTRA, sizeof(double));
|
|
|
int i;
|
|
|
|
|
|
+ if (!tmp)
|
|
|
+ return AVERROR(ENOMEM);
|
|
|
+
|
|
|
for(i=0; i<len + TMP_EXTRA; i++){
|
|
|
double v;
|
|
|
seed = seed* 1664525 + 1013904223;
|
|
@@ -70,6 +73,7 @@ void swri_get_dither(SwrContext *s, void *dst, int len, unsigned seed, enum AVSa
|
|
|
}
|
|
|
|
|
|
av_free(tmp);
|
|
|
+ return 0;
|
|
|
}
|
|
|
|
|
|
av_cold int swri_dither_init(SwrContext *s, enum AVSampleFormat out_fmt, enum AVSampleFormat in_fmt)
|