Files
auCDtect_linux/src/AudioAnalyzer.h

40 lines
998 B
C++

#pragma once
#include <QString>
struct AudioAnalysisReport {
bool ok = false;
QString error;
QString rawReport;
QString conclusion = "Unknown";
QString accuracy = "0%";
int confidence = 0;
double cutoffKhz = 0.0;
int sampleRate = 0;
int channels = 0;
int bitsPerSample = 0;
qint64 sampleFrames = 0;
double spectralFlatness = 0.0;
double highBandRatio = 0.0;
double veryHighBandRatio = 0.0;
double rolloffKhz = 0.0;
double loCutHz = 0.0;
double hiCutHz = 0.0;
double loBoundaryHz = 0.0;
double hiBoundaryHz = 0.0;
double probableBoundaryHz = 0.0;
double phaseNonlinearity = 0.0;
double firstOrderSmoothness = 0.0;
double secondOrderSmoothness = 0.0;
int analyzedWindows = 0;
int informativeWindows = 0;
int suspectWindows = 0;
int genuineWindows = 0;
double suspectRatio = 0.0;
};
class AudioAnalyzer final {
public:
AudioAnalysisReport analyzeFile(const QString &path) const;
};