diff options
author | reimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2014-12-06 11:16:12 +0000 |
---|---|---|
committer | Alessandro Ghedini <alessandro@ghedini.me> | 2014-12-08 00:04:42 +0100 |
commit | 4de6f4f616ded109ef0fe852c02a266ca8bd33e1 (patch) | |
tree | 679903240e1b41e4cf6c9adae14581dafde8b9a4 | |
parent | 7c53bb4bb13d477e359da11a7866583b38bb89a4 (diff) | |
download | mpv-4de6f4f616ded109ef0fe852c02a266ca8bd33e1.tar.bz2 mpv-4de6f4f616ded109ef0fe852c02a266ca8bd33e1.tar.xz |
af_hrtf: Fix out-of-range read.
Based on patch by Yuriy Kaminskiy [yumkam gmail].
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@37330 b3059339-0415-0410-9bf9-f77b7e298cf2
Signed-off-by: wm4 <wm4@nowhere>
-rw-r--r-- | audio/filter/af_hrtf.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/audio/filter/af_hrtf.c b/audio/filter/af_hrtf.c index 4fb382aff4..5dc08f2dbf 100644 --- a/audio/filter/af_hrtf.c +++ b/audio/filter/af_hrtf.c @@ -280,8 +280,13 @@ static inline void update_ch(af_hrtf_t *s, short *in, const int k) } /* We need to update the bass compensation delay line, too. */ - s->ba_l[k] = in[0] + in[4] + in[2]; - s->ba_r[k] = in[4] + in[1] + in[3]; + // TODO: should this use lf/cf/rf etc. instead? + s->ba_l[k] = in[0]; + s->ba_r[k] = in[1]; + if (s->decode_mode == HRTF_MIX_51) { + s->ba_l[k] += in[4] + in[2]; + s->ba_r[k] += in[4] + in[3]; + } } static void clear_coeff(af_hrtf_t *s, float *c) |