char *args;
const char *last_expr = "1";
+ s->pts = AV_NOPTS_VALUE;
s->fft = av_fft_init(s->fft_bits, 0);
s->ifft = av_fft_init(s->fft_bits, 1);
if (!s->fft || !s->ifft)
int ch, n, ret, i, j, k;
int start = s->start, end = s->end;
+ if (s->pts == AV_NOPTS_VALUE)
+ s->pts = frame->pts;
+
ret = av_audio_fifo_write(s->fifo, (void **)frame->extended_data, frame->nb_samples);
av_frame_free(&frame);
if (ret < 0)
values[VAR_NBBINS] = window_size / 2;
values[VAR_CHANNELS] = inlink->channels;
+ for (ch = 0; ch < inlink->channels; ch++) {
+ FFTComplex *fft_data = s->fft_data[ch];
+
+ av_fft_permute(s->fft, fft_data);
+ av_fft_calc(s->fft, fft_data);
+ }
+
for (ch = 0; ch < inlink->channels; ch++) {
FFTComplex *fft_data = s->fft_data[ch];
FFTComplex *fft_temp = s->fft_temp[ch];
float *buf = (float *)s->buffer->extended_data[ch];
int x;
-
values[VAR_CHANNEL] = ch;
- av_fft_permute(s->fft, fft_data);
- av_fft_calc(s->fft, fft_data);
-
for (n = 0; n <= window_size / 2; n++) {
float fr, fi;