From 71e35ed446acde16e015ff66a96ea8b6dc3e13f4 Mon Sep 17 00:00:00 2001 From: Michael Sevakis Date: Tue, 7 Feb 2012 12:20:49 -0500 Subject: Fix FS#12580 - Elapsed time nit reset after track change when playing AC3 files. It wasn't only a52 but also a52_rm that didn't reset the elapsed counter on each new track. The problems seemed obvious enough so fixes are being added blind. Will leave task open for feedback from bug reporter. Change-Id: Ic6d8eb98690ff4be47547d13b6bbafeadf4da745 --- apps/codecs/a52.c | 2 ++ apps/codecs/a52_rm.c | 2 ++ 2 files changed, 4 insertions(+) diff --git a/apps/codecs/a52.c b/apps/codecs/a52.c index 641e2d05da..cb6e66dd05 100644 --- a/apps/codecs/a52.c +++ b/apps/codecs/a52.c @@ -148,6 +148,8 @@ enum codec_status codec_run(void) /* Intialise the A52 decoder and check for success */ state = a52_init(0); + samplesdone = 0; + /* The main decoding loop */ if (ci->id3->offset) { if (ci->seek_buffer(ci->id3->offset)) { diff --git a/apps/codecs/a52_rm.c b/apps/codecs/a52_rm.c index 0aa3edca3a..207c28272e 100644 --- a/apps/codecs/a52_rm.c +++ b/apps/codecs/a52_rm.c @@ -168,6 +168,8 @@ enum codec_status codec_run(void) ci->memset(&pkt,0,sizeof(RMPacket)); init_rm(&rmctx); + samplesdone = 0; + /* check for a mid-track resume and force a seek time accordingly */ if(resume_offset > rmctx.data_offset + DATA_HEADER_SIZE) { resume_offset -= rmctx.data_offset + DATA_HEADER_SIZE; -- cgit v1.2.3