static void stats_print(struct af_stats *s) { int i; long long sum; float v; long long h[MAX_DB]; s->tsquare /= 32768 * 32768; mp_msg(MSGT_AFILTER, MSGL_INFO, "stats: n_samples: %lld\n", s->n_samples); if (s->n_samples == 0) return; mp_msg(MSGT_AFILTER, MSGL_INFO, "stats: mean_volume: -%d dB\n", logdb(s->tsquare / s->n_samples)); mp_msg(MSGT_AFILTER, MSGL_INFO, "stats: max_volume: -%d dB\n", logdb(s->max / (32768.0 * 32768.0))); for (i = 0; i < MAX_DB; i++) h[i] = 0; for (i = 0; i < 65536; i++) { v = (i - 32768) / 32768.0; h[logdb(v * v)] += s->histogram[i]; } for (i = 0; i < MAX_DB; i++) if (h[i] != 0) break; sum = 0; for (; i < MAX_DB; i++) { sum += h[i]; mp_msg(MSGT_AFILTER, MSGL_INFO, "stats: histogram_%ddb: %lld\n", i, h[i]); if (sum > s->n_samples / 1000) break; } }
tagstruct::tagstruct(indx mid, indx grp) : id_(mid) { type(TYPE_NODEF); minraw_ = 0; maxraw_ = 0; mineu_ = num64_cast<double>(0); ; maxeu_ = num64_cast<double>(100); logdb(0.2); devdb(0.0); alarmconst_ = num64_cast<double>(0); posname_ = static_cast<num64> (0); poscomment_ = static_cast<num64> (0); posbinding_ = static_cast<num64> (0); posonmsg_ = static_cast<num64> (0); posoffmsg_ = static_cast<num64> (0); posalarmmsg_ = static_cast<num64> (0); poseu_ = static_cast<num64> (0); alwactive_ = static_cast<bool> (0); unusepos1_ = 0; unusepos2_ = 0; util_helper_ = 0; logged_ = static_cast<num64> (false); onmsged_ = static_cast<num64> (false); offmsged_ = static_cast<num64> (false); group(grp); agroup(npos); logkey(npos); reporthistory(1000); reportsubdelt(0); reportstatistic(REPORT_STATISTIC_AVER); }