VampPluginSDK
2.10
PluginSummarisingAdapter.h
Go to the documentation of this file.
1
/* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */
2
3
/*
4
Vamp
5
6
An API for audio analysis and feature extraction plugins.
7
8
Centre for Digital Music, Queen Mary, University of London.
9
Copyright 2006-2009 Chris Cannam and QMUL.
10
11
Permission is hereby granted, free of charge, to any person
12
obtaining a copy of this software and associated documentation
13
files (the "Software"), to deal in the Software without
14
restriction, including without limitation the rights to use, copy,
15
modify, merge, publish, distribute, sublicense, and/or sell copies
16
of the Software, and to permit persons to whom the Software is
17
furnished to do so, subject to the following conditions:
18
19
The above copyright notice and this permission notice shall be
20
included in all copies or substantial portions of the Software.
21
22
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
23
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
24
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
25
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR
26
ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
27
CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
28
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
29
30
Except as contained in this notice, the names of the Centre for
31
Digital Music; Queen Mary, University of London; and Chris Cannam
32
shall not be used in advertising or otherwise to promote the sale,
33
use or other dealings in this Software without prior written
34
authorization.
35
*/
36
37
#ifndef _VAMP_PLUGIN_SUMMARISING_ADAPTER_H_
38
#define _VAMP_PLUGIN_SUMMARISING_ADAPTER_H_
39
40
#include "
hostguard.h
"
41
#include "
PluginWrapper.h
"
42
43
#include <set>
44
45
_VAMP_SDK_HOSTSPACE_BEGIN
(PluginSummarisingAdapter.h)
46
47
namespace
Vamp
{
48
49
namespace
HostExt {
50
86
class
PluginSummarisingAdapter
:
public
PluginWrapper
87
{
88
public
:
95
PluginSummarisingAdapter
(
Plugin
*plugin);
96
virtual
~
PluginSummarisingAdapter
();
97
98
bool
initialise(
size_t
channels,
size_t
stepSize,
size_t
blockSize);
99
100
void
reset();
101
102
FeatureSet
process(
const
float
*
const
*inputBuffers,
RealTime
timestamp);
103
FeatureSet
getRemainingFeatures();
104
105
typedef
std::set<RealTime>
SegmentBoundaries
;
106
120
void
setSummarySegmentBoundaries(
const
SegmentBoundaries
&);
121
122
enum
SummaryType
{
123
Minimum = 0,
124
Maximum = 1,
125
Mean = 2,
126
Median = 3,
127
Mode = 4,
128
Sum = 5,
129
Variance = 6,
130
StandardDeviation = 7,
131
Count = 8,
132
133
UnknownSummaryType = 999
134
};
135
158
enum
AveragingMethod
{
159
SampleAverage = 0,
160
ContinuousTimeAverage = 1
161
};
162
171
FeatureList getSummaryForOutput(
int
output,
172
SummaryType type,
173
AveragingMethod method = SampleAverage);
174
184
FeatureSet getSummaryForAllOutputs(SummaryType type,
185
AveragingMethod method = SampleAverage);
186
187
protected
:
188
class
Impl;
189
Impl *
m_impl
;
190
};
191
192
}
193
194
}
195
196
_VAMP_SDK_HOSTSPACE_END
(PluginSummarisingAdapter.h)
197
198
#endif
Vamp::HostExt::PluginWrapper
Definition:
PluginWrapper.h:65
Vamp::HostExt::PluginSummarisingAdapter::m_impl
Impl * m_impl
Definition:
PluginSummarisingAdapter.h:188
Vamp::HostExt::PluginSummarisingAdapter::SegmentBoundaries
std::set< RealTime > SegmentBoundaries
Definition:
PluginSummarisingAdapter.h:105
Vamp::HostExt::PluginSummarisingAdapter::AveragingMethod
AveragingMethod
AveragingMethod indicates how the adapter should handle average-based summaries of features whose res...
Definition:
PluginSummarisingAdapter.h:158
_VAMP_SDK_HOSTSPACE_BEGIN
#define _VAMP_SDK_HOSTSPACE_BEGIN(h)
Definition:
hostguard.h:56
Vamp::Plugin
Definition:
vamp-sdk/Plugin.h:124
Vamp::HostExt::PluginSummarisingAdapter::SummaryType
SummaryType
Definition:
PluginSummarisingAdapter.h:122
hostguard.h
_VAMP_SDK_HOSTSPACE_END
#define _VAMP_SDK_HOSTSPACE_END(h)
Definition:
hostguard.h:59
Vamp::RealTime
Definition:
vamp-sdk/RealTime.h:66
Vamp::HostExt::PluginSummarisingAdapter
Definition:
PluginSummarisingAdapter.h:86
Vamp
Definition:
FFT.h:43
PluginWrapper.h
Vamp::Plugin::FeatureSet
std::map< int, FeatureList > FeatureSet
Definition:
vamp-sdk/Plugin.h:395
vamp-hostsdk
PluginSummarisingAdapter.h
Generated by
1.8.17