From 53306876b029205c4dfcce0c39551b115dd18130 Mon Sep 17 00:00:00 2001 From: Andre Noll Date: Sat, 30 Jul 2011 18:14:25 +0200 Subject: [PATCH] mp3_afh: Take padding into account when computing frame duration. Without this fix, the computed duration of a frame can be slightly larger than its actual duration. If this happens for many frames of an mp3 file, the chunk size will be slightly too large, which leads to buffer underruns during streaming. --- mp3_afh.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mp3_afh.c b/mp3_afh.c index b83343ed..b0d44ec9 100644 --- a/mp3_afh.c +++ b/mp3_afh.c @@ -420,7 +420,7 @@ static int mp3_read_info(unsigned char *map, size_t numbytes, int fd, if (ret < 0) continue; fl = ret; - tmp.tv_sec = fl; + tmp.tv_sec = fl - header.padding; tmp.tv_usec = 0; tv_divide(br * 125, &tmp, &cct); tv_add(&cct, &total_time, &tmp); -- 2.39.2