Olaf
Overly Lightweight Acoustic Fingerprinting
Loading...
Searching...
No Matches
olaf_config.h
Go to the documentation of this file.
1// Olaf: Overly Lightweight Acoustic Fingerprinting
2// Copyright (C) 2019-2025 Joren Six
3
4// This program is free software: you can redistribute it and/or modify
5// it under the terms of the GNU Affero General Public License as published by
6// the Free Software Foundation, either version 3 of the License, or
7// (at your option) any later version.
8
9// This program is distributed in the hope that it will be useful,
10// but WITHOUT ANY WARRANTY; without even the implied warranty of
11// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12// GNU Affero General Public License for more details.
13
14// You should have received a copy of the GNU Affero General Public License
15// along with this program. If not, see <https://www.gnu.org/licenses/>.
16#include <stdbool.h> //bool
17#include <string.h> //bool
18#include <stdlib.h> //bool
19#include <stdio.h>
20
32
33
34#ifndef OLAF_CONFIG_H
35#define OLAF_CONFIG_H
36
37 typedef struct Olaf_Config Olaf_Config;
38
49
50 char * dbFolder;
51
52 //------ General Configuration
53
56
59
62
65
67 bool verbose;
68
69 //------ EVENT POINT Configuration
70
73
76
79
82 int halfFilterSizeFrequency;
83
86
89
92
93
103
109 //-----------Fingerprint configuration
110
116
119
124
129
132
133
134 //------------ Matcher configuration
135
138
141
144
150
153
156
161 };
162
168
169
175
181
187
192 void olaf_config_destroy(Olaf_Config *config);
193
194#endif // OLAF_CONFIG_H
195
Olaf_Config * olaf_config_test(void)
Definition olaf_config.c:109
Olaf_Config * olaf_config_mem(void)
Definition olaf_config.c:161
Olaf_Config * olaf_config_esp_32(void)
Definition olaf_config.c:121
Olaf_Config * olaf_config_default(void)
Definition olaf_config.c:22
void olaf_config_destroy(Olaf_Config *config)
Definition olaf_config.c:176
Configuration parameters defining the behaviour of Olaf.
Definition olaf_config.h:48
float keepMatchesFor
Definition olaf_config.h:152
int maxEventPointsPerBlock
Definition olaf_config.h:72
size_t maxFingerprints
Definition olaf_config.h:131
bool sqrtMagnitude
Definition olaf_config.h:108
bool useMagnitudeInfo
Definition olaf_config.h:115
size_t maxDBCollisions
Definition olaf_config.h:160
int maxTimeDistance
Definition olaf_config.h:123
int maxEventPointUsages
Definition olaf_config.h:91
int bytesPerAudioSample
Definition olaf_config.h:64
int halfFilterSizeTime
Definition olaf_config.h:78
int audioSampleRate
Definition olaf_config.h:58
int audioBlockSize
Definition olaf_config.h:55
int audioStepSize
Definition olaf_config.h:61
int filterSizeTime
Definition olaf_config.h:75
float printResultEvery
Definition olaf_config.h:155
int filterSizeFrequency
Definition olaf_config.h:81
float minMatchTimeDiff
Definition olaf_config.h:149
int minFreqDistance
Definition olaf_config.h:126
int minMatchCount
Definition olaf_config.h:143
int minTimeDistance
Definition olaf_config.h:121
int numberOfEPsPerFP
Definition olaf_config.h:118
size_t maxResults
Definition olaf_config.h:137
int eventPointThreshold
Definition olaf_config.h:102
int minFrequencyBin
Definition olaf_config.h:88
int maxEventPoints
Definition olaf_config.h:98
int searchRange
Definition olaf_config.h:140
float minEventPointMagnitude
Definition olaf_config.h:85
int maxFreqDistance
Definition olaf_config.h:128
bool verbose
Definition olaf_config.h:67