Lines Matching refs:dither
160 free_temp(&s->dither.noise);
161 free_temp(&s->dither.temp);
290 s->dither.method = s->user_dither_method;
438 if(!s->resample && !s->rematrix && !s->channel_map && !s->dither.method){
479 s->dither.noise = s->preout;
480 s->dither.temp = s->preout;
481 if (s->dither.method > SWR_DITHER_NS) {
482 s->dither.noise.bps = 4;
483 s->dither.noise.fmt = AV_SAMPLE_FMT_FLTP;
484 s->dither.noise_scale = 1;
487 if(s->rematrix || s->dither.method) {
728 && !(s->out_sample_fmt==AV_SAMPLE_FMT_S32P && (s->dither.output_sample_bits&31))){
760 if(s->dither.method){
765 conv_src = &s->dither.temp;
766 if((ret=swri_realloc_audio(&s->dither.temp, dither_count))<0)
770 if((ret=swri_realloc_audio(&s->dither.noise, dither_count))<0)
773 for(ch=0; ch<s->dither.noise.ch_count; ch++)
774 if((ret=swri_get_dither(s, s->dither.noise.ch[ch], s->dither.noise.count, (12345678913579ULL*ch + 3141592) % 2718281828U, s->dither.noise.fmt))<0)
776 av_assert0(s->dither.noise.ch_count == preout->ch_count);
778 if(s->dither.noise_pos + out_count > s->dither.noise.count)
779 s->dither.noise_pos = 0;
781 if (s->dither.method < SWR_DITHER_NS){
788 s->mix_2_1_simd(conv_src->ch[ch], preout->ch[ch], s->dither.noise.ch[ch] + s->dither.noise.bps * s->dither.noise_pos, s->native_simd_one, 0, 0, len1);
791 s->mix_2_1_f(conv_src->ch[ch] + off, preout->ch[ch] + off, s->dither.noise.ch[ch] + s->dither.noise.bps * s->dither.noise_pos + off, s->native_one, 0, 0, out_count - len1);
794 s->mix_2_1_f(conv_src->ch[ch], preout->ch[ch], s->dither.noise.ch[ch] + s->dither.noise.bps * s->dither.noise_pos, s->native_one, 0, 0, out_count);
798 case AV_SAMPLE_FMT_S16P :swri_noise_shaping_int16(s, conv_src, preout, &s->dither.noise, out_count); break;
799 case AV_SAMPLE_FMT_S32P :swri_noise_shaping_int32(s, conv_src, preout, &s->dither.noise, out_count); break;
800 case AV_SAMPLE_FMT_FLTP :swri_noise_shaping_float(s, conv_src, preout, &s->dither.noise, out_count); break;
801 case AV_SAMPLE_FMT_DBLP :swri_noise_shaping_double(s,conv_src, preout, &s->dither.noise, out_count); break;
804 s->dither.noise_pos += out_count;