~ubuntu-branches/ubuntu/lucid/ecasound2.2/lucid

« back to all changes in this revision

Viewing changes to libecasound/audiofx_amplitude.h

  • Committer: Bazaar Package Importer
  • Author(s): Junichi Uekawa
  • Date: 2009-11-02 18:22:35 UTC
  • mfrom: (5.1.2 sid)
  • Revision ID: james.westby@ubuntu.com-20091102182235-4ngh7699dmkgonyu
Tags: 2.7.0-1
* New upstream release.
* Depend on libreadline-dev instead of libreadline5-dev by request of
  Mattias Klose. It's now libreadline6-dev. (closes: #553748)
* Update menu file to use section Applications/ instead of Apps/.

Show diffs side-by-side

added added

removed removed

Lines of Context:
14
14
class EFFECT_AMPLITUDE : public EFFECT_BASE {
15
15
 
16
16
 public:
 
17
 
 
18
  static parameter_t db_to_linear(parameter_t value);
 
19
 
 
20
  virtual void init(SAMPLE_BUFFER *insample);
 
21
  virtual void release(void);
17
22
  virtual ~EFFECT_AMPLITUDE(void);
 
23
 
 
24
protected:
 
25
 
 
26
  SAMPLE_BUFFER *cur_sbuf_repp;
 
27
 
18
28
};
19
29
 
20
30
#include "audiofx_compressor.h"
21
31
 
22
32
/**
23
 
 * Normal amplifier
 
33
 * Amplifier for adjusting signal level (linear)
24
34
 * @author Kai Vehmanen
25
35
 */
26
36
class EFFECT_AMPLIFY: public EFFECT_AMPLITUDE {
27
37
 
28
 
  parameter_t gain;
 
38
  parameter_t gain_rep;
29
39
  SAMPLE_ITERATOR i;
 
40
  SAMPLE_BUFFER* sbuf_repp;
30
41
 
31
42
 public:
32
43
 
38
49
  virtual parameter_t get_parameter(int param) const;
39
50
 
40
51
  virtual void init(SAMPLE_BUFFER *insample);
 
52
  virtual void release(void);
41
53
  virtual void process(void);
 
54
  virtual void process_ref(void);
42
55
 
43
56
  EFFECT_AMPLIFY (parameter_t multiplier_percent = 100.0);
44
57
  virtual ~EFFECT_AMPLIFY(void);
47
60
};
48
61
 
49
62
/**
 
63
 * Amplifier for adjusting signal level (dB)
 
64
 * @author Kai Vehmanen
 
65
 */
 
66
class EFFECT_AMPLIFY_DB: public EFFECT_AMPLITUDE {
 
67
 
 
68
 private:
 
69
 
 
70
  parameter_t gain_rep;
 
71
  parameter_t gain_db_rep; 
 
72
  int channel_rep;
 
73
  SAMPLE_BUFFER *sbuf_repp;
 
74
  SAMPLE_ITERATOR_CHANNEL i_ch;
 
75
  SAMPLE_ITERATOR i_all;
 
76
 
 
77
 public:
 
78
 
 
79
  virtual std::string name(void) const { return("Amplify (dB)"); }
 
80
  virtual std::string parameter_names(void) const  { return("gain-db,channel"); }
 
81
 
 
82
  virtual void set_parameter(int param, parameter_t value);
 
83
  virtual parameter_t get_parameter(int param) const;
 
84
 
 
85
  virtual void init(SAMPLE_BUFFER *insample);
 
86
  virtual void release(void);
 
87
  virtual void process(void);
 
88
  virtual void process_ref(void);
 
89
 
 
90
  virtual int output_channels(int i_channels) const;
 
91
 
 
92
  EFFECT_AMPLIFY_DB(parameter_t gain = 0.0f, int channel = 0);
 
93
  virtual ~EFFECT_AMPLIFY_DB(void);
 
94
  EFFECT_AMPLIFY_DB* clone(void) const { return new EFFECT_AMPLIFY_DB(*this); }
 
95
  EFFECT_AMPLIFY_DB* new_expr(void) const { return new EFFECT_AMPLIFY_DB(); }
 
96
};
 
97
 
 
98
/**
50
99
 * Amplifier with clip control.
51
100
 * @author Kai Vehmanen
52
101
 */
96
145
 
97
146
  virtual void init(SAMPLE_BUFFER *insample);
98
147
  virtual void process(void);
 
148
  virtual void process_ref(void);
99
149
 
100
150
  EFFECT_AMPLIFY_CHANNEL* clone(void) const { return new EFFECT_AMPLIFY_CHANNEL(*this); }
101
151
  EFFECT_AMPLIFY_CHANNEL* new_expr(void) const { return new EFFECT_AMPLIFY_CHANNEL(); }
235
285
 
236
286
  virtual void init(SAMPLE_BUFFER *insample);
237
287
  virtual void process(void);
 
288
  virtual void process_ref(void);
238
289
    
239
290
  EFFECT_NORMAL_PAN* clone(void) const { return new EFFECT_NORMAL_PAN(*this); }
240
291
  EFFECT_NORMAL_PAN* new_expr(void) const { return new EFFECT_NORMAL_PAN(); }