Initial auCDtect Linux implementation

This commit is contained in:
2026-04-19 10:45:03 +03:00
commit 4210e5aa8b
16 changed files with 1867 additions and 0 deletions

39
src/AudioAnalyzer.h Normal file
View File

@@ -0,0 +1,39 @@
#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;
};