summaryrefslogtreecommitdiff
path: root/libavfilter/af_afir.h
diff options
context:
space:
mode:
authorPaul B Mahol <onemda@gmail.com>2023-04-23 23:30:42 +0200
committerPaul B Mahol <onemda@gmail.com>2023-04-23 23:40:42 +0200
commitef338cfd7b435703cf56ed5e6527b8f1953f90f1 (patch)
tree6834a4c7d9eaba049163db34ccea5995ed9796a9 /libavfilter/af_afir.h
parent4dd3f2098c2f66f00db9c284b3e04240012944f5 (diff)
downloadffmpeg-ef338cfd7b435703cf56ed5e6527b8f1953f90f1.tar.gz
avfilter/af_afir: fix IR switching with different lengths
Diffstat (limited to 'libavfilter/af_afir.h')
-rw-r--r--libavfilter/af_afir.h9
1 files changed, 5 insertions, 4 deletions
diff --git a/libavfilter/af_afir.h b/libavfilter/af_afir.h
index a9f6d217f4..11564d5b12 100644
--- a/libavfilter/af_afir.h
+++ b/libavfilter/af_afir.h
@@ -39,7 +39,6 @@ typedef struct AudioFIRSegment {
int input_size;
int input_offset;
- int *loading;
int *output_offset;
int *part_index;
@@ -49,7 +48,7 @@ typedef struct AudioFIRSegment {
AVFrame *tempin;
AVFrame *tempout;
AVFrame *buffer;
- AVFrame *coeff[MAX_IR_STREAMS];
+ AVFrame *coeff;
AVFrame *input;
AVFrame *output;
@@ -82,11 +81,13 @@ typedef struct AudioFIRContext {
int eof_coeffs[MAX_IR_STREAMS];
int have_coeffs[MAX_IR_STREAMS];
int nb_taps[MAX_IR_STREAMS];
+ int nb_segments[MAX_IR_STREAMS];
+ int max_offset[MAX_IR_STREAMS];
int nb_channels;
int one2many;
+ int *loading;
- AudioFIRSegment seg[1024];
- int nb_segments;
+ AudioFIRSegment seg[MAX_IR_STREAMS][1024];
AVFrame *in;
AVFrame *ir[MAX_IR_STREAMS];