On Sat, 5 Aug 2023, Lynne wrote:
Aug 5, 2023, 11:15 by d...@lynne.ee:
Aug 5, 2023, 10:33 by c...@passwd.hu:
Improves the audio corruption regression caused by
6ba0aa1770ba29eb4126c6a706f6b0cd3809648f reported in ticket #10029.
There is still however a noticable audio glitch, so the FFT conversion to AVTX
probably also needs some modifications.
Signed-off-by: Marton Balint <c...@passwd.hu>
---
libavcodec/on2avc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libavcodec/on2avc.c b/libavcodec/on2avc.c
index 74be1dcb60..474adb149d 100644
--- a/libavcodec/on2avc.c
+++ b/libavcodec/on2avc.c
@@ -700,7 +700,7 @@ static int on2avc_reconstruct_channel_ext(On2AVCContext *c,
AVFrame *dst, int of
break;
case WINDOW_TYPE_EXT5:
c->wtf(c, buf, in, 512);
- c->mdct_half_fn(c->mdct, buf + 512, in + 512, sizeof(float));
+ c->mdct_half_fn(c->mdct_half, buf + 512, in + 512, sizeof(float));
for (i = 0; i < 256; i++) {
FFSWAP(float, buf[i + 512], buf[1023 - i]);
}
LGTM
Thanks
Actually, looking at it, the WINDOW_TYPE_EXT7 branch, something
weird's going on there as well:
- c->mdct.imdct_half(&c->mdct, buf, in);
+ c->mdct_fn(c->mdct, buf, in, sizeof(float));
The original misused the context. Maybe this
should be both half as well?
I thought that is just the old API where you have to use the imdct_half
function to get the useful half-sized IMDCT. But the old code really means
to use the 11-bit context to calculate 1024 samples not the 10-bit one
confusingly called c->mdct_half to calculate 512 samples.
Regards,
Marton
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".