blob: cf5507d82da47e83cd72345bdc075de07ef36a68 (
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
|
/*
* dspitems.c: A plugin for the Video Disk Recorder
*
* See the README file for copyright information and how to reach the author.
*
* Date: 26.05.07
*/
//***************************************************************************
// Class Span Service
//***************************************************************************
#define SPAN_PROVIDER_CHECK_ID "Span-ProviderCheck-v1.0"
#define SPAN_CLIENT_CHECK_ID "Span-ClientCheck-v1.0"
#define SPAN_SET_PCM_DATA_ID "Span-SetPcmData-v1.0"
#define SPAN_GET_BAR_HEIGHTS_ID "Span-GetBarHeights-v1.0"
//***************************************************************************
// Calss cSpanService
//***************************************************************************
class cSpanService
{
public:
// Span requests to collect possible providers / clients
struct Span_Provider_Check_1_0
{
bool* isActive;
bool* isRunning;
};
struct Span_Client_Check_1_0
{
bool* isActive;
bool* isRunning;
};
// Span data
struct Span_SetPcmData_1_0
{
unsigned int length; // the length of the PCM-data
int* data; // the PCM-Data as 32-bit int, however only the lower 16-bit are used
// and you have to take care to hand in such data!
};
struct Span_GetBarHeights_v1_0
{
unsigned int bands; // number of bands to compute
unsigned int* barHeights; // the heights of the bars of the two channels combined
unsigned int* barHeightsLeftChannel; // the heights of the bars of the left channel
unsigned int* barHeightsRightChannel; // the heights of the bars of the right channel
unsigned int* volumeLeftChannel; // the volume of the left channels
unsigned int* volumeRightChannel; // the volume of the right channels
unsigned int* volumeBothChannels; // the combined volume of the two channels
const char* name; // name of the plugin that wants to get the data
// (must be unique for each client!)
unsigned int falloff; // bar falloff value
unsigned int* barPeaksBothChannels; // bar peaks of the two channels combined
unsigned int* barPeaksLeftChannel; // bar peaks of the left channel
unsigned int* barPeaksRightChannel; // bar peaks of the right channel
};
};
|