Revert previous commit, was incorrect
[amarok.git] / src / engine / helix / helix-sp / gain.h
blobd120a134b845ec395be6ad8c8b2bcad0d3aaaa94
1 /* ***** BEGIN LICENSE BLOCK *****
3 * This software is released under the provisions of the GPL version 2.
4 * see file "COPYING". If that file is not available, the full statement
5 * of the license can be found at
7 * http://www.fsf.org/licensing/licenses/gpl.txt
9 * Portions Copyright (c) 1995-2004 RealNetworks, Inc. All Rights Reserved.
10 * Copyright (c) 2005 Paul Cifarelli All Rights Reserved.
13 * This file is part of the Helix DNA Technology. RealNetworks is the
14 * developer of the Original Code and owns the copyrights in the
15 * portions it created.
17 * This file, and the files included with this file, is distributed
18 * and made available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY
19 * KIND, EITHER EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS
20 * ALL SUCH WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES
21 * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, QUIET
22 * ENJOYMENT OR NON-INFRINGEMENT.
24 * Technology Compatibility Kit Test Suite(s) Location:
25 * http://www.helixcommunity.org/content/tck
27 * ***** END LICENSE BLOCK ***** */
29 #ifndef _GAIN_H_
30 #define _GAIN_H_
32 #include "hxtypes.h"
34 #ifdef __cplusplus
35 extern "C" {
36 #endif
38 #define GAIN_MAX_dB 0.0
39 #define GAIN_MIN_dB -27.0
41 struct GAIN_STATE;
42 typedef struct GAIN_STATE GAIN_STATE;
44 GAIN_STATE* gainInit(int sampleRate, int nChannels, int bytePerSample) ;
45 void gainFree(GAIN_STATE*) ;
46 float gainSetImmediatedB(float dB, GAIN_STATE*) ;
47 float gainSetSmoothdB(float dB, GAIN_STATE*);
48 float gainSetImmediate(float dB, GAIN_STATE*) ;
49 float gainSetSmooth(float dB, GAIN_STATE*);
50 void gainSetMute(GAIN_STATE* g);
51 int gainSetTimeConstant(float millis, GAIN_STATE*) ;
52 void gainFeed(unsigned char* signal, unsigned char *outsignal, int len, GAIN_STATE* g) ;
54 #ifdef __cplusplus
56 #endif
58 #endif /* _GAIN_H_ */