все:
В методе DataSource :: sniff для получения значения достоверности.Так в чем смысл уверенности?Как понять это?Когда его значение больше или равно 0,6f, значит найден снифф.Но в функции SniffMP3 достоверность установлена на 0,2f.Почему?
bool DataSource::sniff(
String8 *mimeType, float *confidence, sp<AMessage> *meta) {
*mimeType = "";
*confidence = 0.0f;
meta->clear();
Mutex::Autolock autoLock(gSnifferMutex);
for (List<SnifferFunc>::iterator it = gSniffers.begin();
it != gSniffers.end(); ++it) {
String8 newMimeType;
float newConfidence;
sp<AMessage> newMeta;
if ((*it)(this, &newMimeType, &newConfidence, &newMeta)) {
if (newConfidence > *confidence) {
*mimeType = newMimeType;
*confidence = newConfidence;
*meta = newMeta;
if(*confidence >= 0.6f) {
LOGV("Ignore other Sniffers - confidence = %f , mimeType = %s",*confidence,mimeType->string());
break;
}
}
}
}
return *confidence > 0.0;
}