[FFmpeg-cvslog] swresample: move dither init up
Michael Niedermayer
git at videolan.org
Thu Aug 18 13:16:06 EEST 2016
ffmpeg | branch: master | Michael Niedermayer <michael at niedermayer.cc> | Thu Aug 18 11:44:42 2016 +0200| [946acacdcdff7eb9ac6430691ac6121516da9083] | committer: Michael Niedermayer
swresample: move dither init up
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=946acacdcdff7eb9ac6430691ac6121516da9083
---
libswresample/dither.c | 9 ---------
libswresample/swresample.c | 13 +++++++++++--
2 files changed, 11 insertions(+), 11 deletions(-)
diff --git a/libswresample/dither.c b/libswresample/dither.c
index 08c793d..76f8ccf 100644
--- a/libswresample/dither.c
+++ b/libswresample/dither.c
@@ -123,15 +123,6 @@ av_cold int swri_dither_init(SwrContext *s, enum AVSampleFormat out_fmt, enum AV
s->dither.method = SWR_DITHER_TRIANGULAR_HIGHPASS;
}
- av_assert0(!s->preout.count);
- s->dither.noise = s->preout;
- s->dither.temp = s->preout;
- if (s->dither.method > SWR_DITHER_NS) {
- s->dither.noise.bps = 4;
- s->dither.noise.fmt = AV_SAMPLE_FMT_FLTP;
- s->dither.noise_scale = 1;
- }
-
return 0;
}
diff --git a/libswresample/swresample.c b/libswresample/swresample.c
index 351623b..ade81ef 100644
--- a/libswresample/swresample.c
+++ b/libswresample/swresample.c
@@ -322,6 +322,9 @@ av_assert0(s->out.ch_count);
s->silence = s->in;
s->drop_temp= s->out;
+ if ((ret = swri_dither_init(s, s->out_sample_fmt, s->int_sample_fmt)) < 0)
+ goto fail;
+
if(!s->resample && !s->rematrix && !s->channel_map && !s->dither.method){
s->full_convert = swri_audio_convert_alloc(s->out_sample_fmt,
s-> in_sample_fmt, s-> in.ch_count, NULL, 0);
@@ -362,8 +365,14 @@ av_assert0(s->out.ch_count);
set_audiodata_fmt(&s->in_buffer, s->int_sample_fmt);
}
- if ((ret = swri_dither_init(s, s->out_sample_fmt, s->int_sample_fmt)) < 0)
- goto fail;
+ av_assert0(!s->preout.count);
+ s->dither.noise = s->preout;
+ s->dither.temp = s->preout;
+ if (s->dither.method > SWR_DITHER_NS) {
+ s->dither.noise.bps = 4;
+ s->dither.noise.fmt = AV_SAMPLE_FMT_FLTP;
+ s->dither.noise_scale = 1;
+ }
if(s->rematrix || s->dither.method) {
ret = swri_rematrix_init(s);
More information about the ffmpeg-cvslog
mailing list