Finalized 2.1.2;

Starting work on 2.1.3 (prioritized metadata lookup, freedb via ctdb)
This commit is contained in:
chudov
2011-06-26 00:02:29 +00:00
parent e3b05e3e7f
commit 78197894f7
18 changed files with 708 additions and 221 deletions

View File

@@ -188,19 +188,36 @@ namespace CUETools.AccurateRip
return worstTotal == 0xffff ? 0 : worstTotal;
}
// TODO: Replace min(sum) with sum(min)!!!
public uint WorstConfidence()
public uint WorstConfidence(int oi)
{
uint worstConfidence = 0xffff;
for (int iTrack = 0; iTrack < _toc.AudioTracks; iTrack++)
{
uint sumConfidence = SumConfidence(iTrack);
if (worstConfidence > sumConfidence && (Total(iTrack) != 0 || CRC(iTrack) != 0))
worstConfidence = sumConfidence;
int trno = iTrack + _toc.FirstAudio - 1;
uint sum = 0;
// sum all matches for this track and this offset
for (int di = 0; di < AccDisks.Count; di++)
if (trno < AccDisks[di].tracks.Count
&& (CRC(iTrack, oi) == AccDisks[di].tracks[trno].CRC
|| oi == 0 && CRCV2(iTrack) == AccDisks[di].tracks[trno].CRC))
sum += AccDisks[di].tracks[iTrack + _toc.FirstAudio - 1].count;
// exclude silent tracks
if (worstConfidence > sum && (Total(iTrack) != 0 || CRC(iTrack, oi) != 0))
worstConfidence = sum;
}
return worstConfidence;
}
public uint WorstConfidence()
{
if (ARStatus != null)
return 0U;
uint worstConfidence = 0;
for (int oi = -_arOffsetRange; oi <= _arOffsetRange; oi++)
worstConfidence += WorstConfidence(oi);
return worstConfidence;
}
public uint SumConfidence(int iTrack)
{
if (ARStatus != null)