The AudioTone class is used to create a frame of audio encoded single or dualtones.
More...
#include <audio2.h>
List of all members.
Public Member Functions |
Rate | getRate (void) |
| Get the sample encoding rate being used for the tone generator.
|
size_t | getSamples (void) |
| Get the frame size for the number of audio samples generated.
|
bool | isSilent (void) |
| Test if the tone generator is currently set to silence.
|
virtual Linear | getFrame (void) |
| Iterate the tone frame, and extract linear samples in native frame.
|
unsigned | getFrames (Linear buffer, unsigned number) |
| This is used to copy one or more pages of framed audio quickly to an external buffer.
|
virtual bool | isComplete (void) |
| See if at end of tone.
|
| AudioTone (timeout_t duration=20, Rate rate=rate8khz) |
| Construct a silent tone generator of specific frame size.
|
| AudioTone (unsigned f1, unsigned f2, Level l1, Level l2, timeout_t duration=20, Rate sample=rate8khz) |
| Construct a dual tone frame generator.
|
| AudioTone (unsigned freq, Level level, timeout_t duration=20, Rate sample=rate8khz) |
| Construct a single tone frame generator.
|
virtual | ~AudioTone () |
Protected Member Functions |
void | silence (void) |
| Set the frame to silent.
|
void | reset (void) |
| Reset the tone generator completely.
|
void | cleanup (void) |
| Cleanup for virtual destructors to use.
|
void | single (unsigned freq, Level level) |
| Set frame to generate single tone...
|
void | dual (unsigned f1, unsigned f2, Level l1, Level l2) |
| Set frame to generate dual tone...
|
Protected Attributes |
Rate | rate |
unsigned | samples |
Linear | frame |
double | df1 |
double | df2 |
double | p1 |
double | p2 |
Level | m1 |
Level | m2 |
bool | silencer |
Detailed Description
The AudioTone class is used to create a frame of audio encoded single or dualtones.
The frame will be iterated for each request, so a continual tone can be extracted by frame.
- Author:
- David Sugar <dyfet@ostel.com> audio tone generator class.
Constructor & Destructor Documentation
ost::AudioTone::AudioTone |
( |
timeout_t |
duration = 20 , |
|
|
Rate |
rate = rate8khz |
|
) |
| |
Construct a silent tone generator of specific frame size.
- Parameters:
-
duration | of frame in milliseconds. |
rate | of samples. |
ost::AudioTone::AudioTone |
( |
unsigned |
f1, |
|
|
unsigned |
f2, |
|
|
Level |
l1, |
|
|
Level |
l2, |
|
|
timeout_t |
duration = 20 , |
|
|
Rate |
sample = rate8khz |
|
) |
| |
Construct a dual tone frame generator.
- Parameters:
-
f1 | frequency of tone 1. |
f2 | frequency of tone 2. |
l1 | level of tone 1. |
l2 | level of tone 2. |
duration | of frame in milliseconds. |
sample | rate being generated. |
ost::AudioTone::AudioTone |
( |
unsigned |
freq, |
|
|
Level |
level, |
|
|
timeout_t |
duration = 20 , |
|
|
Rate |
sample = rate8khz |
|
) |
| |
Construct a single tone frame generator.
- Parameters:
-
freq | of tone. |
level | of tone. |
duration | of frame in milliseconds. |
sample | rate being generated. |
virtual ost::AudioTone::~AudioTone |
( |
| ) |
[virtual] |
Member Function Documentation
void ost::AudioTone::cleanup |
( |
void |
| ) |
[protected] |
Cleanup for virtual destructors to use.
void ost::AudioTone::dual |
( |
unsigned |
f1, |
|
|
unsigned |
f2, |
|
|
Level |
l1, |
|
|
Level |
l2 |
|
) |
| [protected] |
Set frame to generate dual tone...
- Parameters:
-
f1 | frequency of tone 1 |
f2 | frequency of tone 2 |
l1 | level of tone 1 |
l2 | level of tone 2 |
virtual Linear ost::AudioTone::getFrame |
( |
void |
| ) |
[virtual] |
Iterate the tone frame, and extract linear samples in native frame.
If endian flag passed, then convert for standard endian representation (byte swap) if needed.
- Returns:
- pointer to samples.
Reimplemented in ost::TelTone, ost::DTMFTones, and ost::MFTones.
unsigned ost::AudioTone::getFrames |
( |
Linear |
buffer, |
|
|
unsigned |
number |
|
) |
| |
This is used to copy one or more pages of framed audio quickly to an external buffer.
- Returns:
- number of frames copied.
- Parameters:
-
buffer | to copy into. |
number | of frames requested. |
Rate ost::AudioTone::getRate |
( |
void |
| ) |
[inline] |
Get the sample encoding rate being used for the tone generator.
- Returns:
- sample rate in samples per second.
size_t ost::AudioTone::getSamples |
( |
void |
| ) |
[inline] |
Get the frame size for the number of audio samples generated.
- Returns:
- number of samples processed in frame.
virtual bool ost::AudioTone::isComplete |
( |
void |
| ) |
[virtual] |
bool ost::AudioTone::isSilent |
( |
void |
| ) |
|
Test if the tone generator is currently set to silence.
- Returns:
- true if generator set for silence.
void ost::AudioTone::reset |
( |
void |
| ) |
[protected] |
Reset the tone generator completely.
Produces silence.,
void ost::AudioTone::silence |
( |
void |
| ) |
[protected] |
void ost::AudioTone::single |
( |
unsigned |
freq, |
|
|
Level |
level |
|
) |
| [protected] |
Set frame to generate single tone...
- Parameters:
-
freq | of tone. |
level | of tone. |
Member Data Documentation
The documentation for this class was generated from the following file: