blob: b7623f4205c80c03e4955d0a5683ccbe6026a234 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
|
/*
* Oreka -- A media capture and retrieval platform
*
* Copyright (C) 2005, orecx LLC
*
* http://www.orecx.com
*
* This program is free software, distributed under the terms of
* the GNU General Public License.
* Please refer to http://www.gnu.org/copyleft/gpl.html
*
*/
#ifndef __CONFIG_H__
#define __CONFIG_H__
#include "StdString.h"
#include "Object.h"
#include "AudioTape.h"
#define LOG_MESSAGES_PARAM "LogMessages"
#define LOG_MESSAGES_DEFAULT false
#define CAPTURE_PLUGIN_PARAM "CapturePlugin"
#define CAPTURE_PLUGIN_DEFAULT ""
#define CAPTURE_PLUGIN_PATH_PARAM "CapturePluginPath"
#define CAPTURE_PLUGIN_PATH_DEFAULT "AudioCapturePlugins"
#define STORAGE_AUDIO_FORMAT_PARAM "StorageAudioFormat"
#define STORAGE_AUDIO_FORMAT_DEFAULT (AudioTape::FfGsm)
#define NUM_BATCH_THREADS_PARAM "NumBatchThreads"
#define NUM_BATCH_THREADS_DEFAULT 1
#define DELETE_NATIVE_FILE_PARAM "DeleteNativeFile"
#define DELETE_NATIVE_FILE_DEFAULT true
#define ENABLE_REPORTING_PARAM "EnableReporting"
#define ENABLE_REPORTING_DEFAULT true
#define AUDIO_CHUNK_DEFAULT_SIZE_PARAM "AudioChunkDefaultSize"
#define AUDIO_CHUNK_DEFAULT_SIZE_DEFAULT 8000
#define AUDIO_SEGMENTATION_PARAM "AudioSegmentation"
#define AUDIO_SEGMENTATION_DEFAULT false
#define AUDIO_SEGMENT_DURATION_PARAM "AudioSegmentDuration"
#define AUDIO_SEGMENT_DURATION_DEFAULT 60
#define LOG_RMS_PARAM "LogRms"
#define LOG_RMS_DEFAULT false
#define VAD_PARAM "VAD"
#define VAD_DEFAULT false
#define VAD_HIGH_THRESHOLD_DB_PARAM "VadHighThresholdDb"
#define VAD_HIGH_THRESHOLD_DB_DEFAULT -12.2
#define VAD_LOW_THRESHOLD_DB_PARAM "VadLowThresholdDb"
#define VAD_LOW_THRESHOLD_DB_DEFAULT -12.5
#define VAD_HOLD_ON_SEC_PARAM "VadHoldOnSec"
#define VAD_HOLD_ON_SEC_DEFAULT 4
#define TRACKER_HOSTNAME_PARAM "TrackerHostname"
#define TRACKER_HOSTNAME_DEFAULT "localhost"
#define TRACKER_TCP_PORT_PARAM "TrackerTcpPort"
#define TRACKER_TCP_PORT_DEFAULT 8080
#define TRACKER_SERVICENAME_PARAM "TrackerServicename"
#define TRACKER_SERVICENAME_DEFAULT "orktrack"
#define SERVICE_NAME_PARAM "ServiceName"
#define REPORTING_RETRY_DELAY_PARAM "ReportingRetryDelay"
#define CLIENT_TIMEOUT_PARAM "ClientTimeout"
#define AUDIO_OUTPUT_PATH_PARAM "AudioOutputPath"
#define AUDIO_OUTPUT_PATH_DEFAULT "."
#define IMMEDIATE_PROCESSING_QUEUE_SIZE_PARAM "ImmediateProcessingQueueSize"
#define IMMEDIATE_PROCESSING_QUEUE_SIZE_DEFAULT 10000
#define BATCH_PROCESSING_QUEUE_SIZE_PARAM "BatchProcessingQueueSize"
#define BATCH_PROCESSING_QUEUE_SIZE_DEFAULT 20000
#define BATCH_PROCESSING_ENHANCE_PRIORITY_PARAM "BatchProcessingEnhancePriority"
#define BATCH_PROCESSING_ENHANCE_PRIORITY_DEFAULT false
class Config : public Object
{
public:
Config();
void Define(Serializer* s);
void Validate();
CStdString GetClassName();
ObjectRef NewInstance();
inline ObjectRef Process() {return ObjectRef();};
bool m_logMessages;
bool m_logRms;
bool m_enableReporting;
CStdString m_capturePlugin;
CStdString m_capturePluginPath;
int m_numBatchThreads;
bool m_deleteNativeFile;
int m_audioChunkDefaultSize;
bool m_audioSegmentation;
int m_audioSegmentDuration;
AudioTape::FileFormatEnum m_storageAudioFormat;
bool m_vad;
double m_vadHighThresholdDb;
double m_vadLowThresholdDb;
double m_vadHoldOnSec;
CStdString m_trackerHostname;
CStdString m_trackerServicename;
int m_trackerTcpPort;
CStdString m_serviceName;
int m_reportingRetryDelay;
int m_clientTimeout;
CStdString m_audioOutputPath;
int m_immediateProcessingQueueSize;
int m_batchProcessingQueueSize;
bool m_batchProcessingEnhancePriority;
};
#endif
|