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
This commit is contained in:
Michael Sevakis 2012-02-07 12:20:49 -05:00
parent a2f28452e1
commit 71e35ed446
2 changed files with 4 additions and 0 deletions

View file

@ -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)) {

View file

@ -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;