[FFmpeg-cvslog] psymodel: dont apply lowpass filters with a cutoff close to the nyquist

Michael Niedermayer git at videolan.org
Thu Mar 7 20:39:32 CET 2013


ffmpeg | branch: release/1.1 | Michael Niedermayer <michaelni at gmx.at> | Thu Mar  7 19:28:30 2013 +0100| [088ba9bc3e7629af08e50816c91fc8e84ec8f898] | committer: Carl Eugen Hoyos

psymodel: dont apply lowpass filters with a cutoff close to the nyquist

The IIR filter numerically diverges in such cases, this could easily be
fixed but would make the filter slower on some platforms

Fixes Ticket2246

Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
(cherry picked from commit fee5da6b0a79bed9dc849f216b6da1e03132b668)

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=088ba9bc3e7629af08e50816c91fc8e84ec8f898
---

 libavcodec/psymodel.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavcodec/psymodel.c b/libavcodec/psymodel.c
index a4a7cbb..09dd83d 100644
--- a/libavcodec/psymodel.c
+++ b/libavcodec/psymodel.c
@@ -106,7 +106,7 @@ av_cold struct FFPsyPreprocessContext* ff_psy_preprocess_init(AVCodecContext *av
     if (!cutoff_coeff && avctx->codec_id == AV_CODEC_ID_AAC)
         cutoff_coeff = 2.0 * AAC_CUTOFF(avctx) / avctx->sample_rate;
 
-    if (cutoff_coeff)
+    if (cutoff_coeff && cutoff_coeff < 0.98)
     ctx->fcoeffs = ff_iir_filter_init_coeffs(avctx, FF_FILTER_TYPE_BUTTERWORTH,
                                              FF_FILTER_MODE_LOWPASS, FILT_ORDER,
                                              cutoff_coeff, 0.0, 0.0);



More information about the ffmpeg-cvslog mailing list