#include <Frame.hxx>
A Frame has an associated time tag that points to the center of the audio chunk being used in the analysis and a duration. It also holds audio data in 4 attributes: AudioFrame is the input audio used for analysis; SynthAudioFrame is the synthesized audio after analysis and possible transformation; SinusoidalAudioFrame is the synthesized only sinusoidal component; ResidualAudioFrame is the synthesized only resiual component. A Frame also has three associated spectrums: Spectrum is the result of the STFT applied to the input audio; SinusoidalSpec is the spectrum of the sinusoidal component; ResidualSpec is the spectrum of the residual. Finally, a frame has SpectralPeakArray that holds the output of the Spectral Peak Detection algorithm and possibly a peak continuation.The Fundamental attribute holds the data of the output of the Fundamental detection algorithm. Note: There are some Getters and Setters, but for efficiency you need to work directly on the dynamic attributes
Definition at line 55 of file Frame.hxx.
Public Member Functions | |
DYNAMIC_TYPE_USING_INTERFACE (Frame, 14, ProcessingData) | |
DYN_ATTRIBUTE (0, public, TData, CenterTime) | |
Value of time in the center of the frame in miliseconds. | |
DYN_ATTRIBUTE (1, public, TData, Duration) | |
Duration of the Frame in miliseconds. | |
DYN_ATTRIBUTE (2, public, Spectrum, Spectrum) | |
Spectrum analyzed from the Audio input (in SMS with Residual Window). | |
DYN_ATTRIBUTE (3, public, Spectrum, SinusoidalAnalSpectrum) | |
Spectrum analyzed from the Audio input (in SMS with Sinusoidal Window). | |
DYN_ATTRIBUTE (4, public, SpectralPeakArray, SpectralPeakArray) | |
Vector of peaks in spectral analysis. | |
DYN_ATTRIBUTE (5, public, Fundamental, Fundamental) | |
Fundamental frequency of the information being analyzed. | |
DYN_ATTRIBUTE (6, public, Spectrum, OutSpec) | |
Output global spectrum. | |
DYN_ATTRIBUTE (7, public, Spectrum, ResidualSpec) | |
Residual spectrum of the Audio. | |
DYN_ATTRIBUTE (8, public, Spectrum, SinusoidalSpec) | |
Sinusoidal spectrum of the Audio. | |
DYN_ATTRIBUTE (9, public, Audio, AudioFrame) | |
Audio chunk we want to analyze. | |
DYN_ATTRIBUTE (10, public, Audio, SinusoidalAudioFrame) | |
Sinusoidal synthesized Audio. | |
DYN_ATTRIBUTE (11, public, Audio, ResidualAudioFrame) | |
Residual synthesized Audio. | |
DYN_ATTRIBUTE (12, public, Audio, SynthAudioFrame) | |
Global synthesized Audio. | |
DYN_ATTRIBUTE (13, public, bool, IsHarmonic) | |
Is a harmonic frame or not. | |
TData | GetMag (TData freq) const |
Returns the Magnitude of a given frequency. | |
TData | GetMag (TIndex pos) const |
Returns the Magnitude given a position in the Spectrum array. | |
TData | GetPhase (TData freq) const |
Returns the Phase of a given frequency. | |
TData | GetPhase (TIndex pos) const |
Returns the Phase of the spectrum related to a position in the Spectrum array. | |
void | SetMag (TData freq, TData newMag) |
Replaces the Magnitude of the specified Frequency in the Spectrum with the value indicated. | |
void | SetMag (TIndex pos, TData newMag) |
Replaces the Magnitude of the specified position in the Spectrum array with the value indicated. | |
void | SetPhase (TData freq, TData newPhase) |
Replaces the Phase of the specified Frequency in the Spectrum with the value indicated. | |
void | SetPhase (TIndex pos, TData newPhase) |
Replaces the Phase of the specified position in the Spectrum array with the value indicated. | |
SpectralPeak | GetSpectralPeak (TIndex pos) const |
Returns the Spectral peak located in the given position. | |
SpectralPeak | GetThruIndexSpectralPeak (TIndex pos) const |
Returns the Spectral peak located in the given position of the Spectral Array. | |
void | SetSpectralPeak (TIndex pos, const SpectralPeak &spectralPeak, TIndex index=-1) |
This method allows to change values of a Spectral Peak given its position in the array. | |
void | InsertSpectralPeak (TIndex pos, const SpectralPeak &spectralPeak, bool insertIndex=false, TIndex index=-1) |
Inserts a peak at the given position. | |
void | AddSpectralPeak (const SpectralPeak &spectralPeak, bool addIndex=false, TIndex index=-1) |
Inserts a peak at the end of Spectral Array. | |
void | DeleteSpectralPeak (TIndex pos, bool deleteIndex=false) |
Deletes a peak of Spectral Array. | |
TData | GetResMag (TData freq) const |
Returns the Magnitude of a given frequency in residual Spectrum. | |
TData | GetResMag (TIndex pos) const |
Returns the Magnitude given a position in the Residual Spectrum array. | |
TData | GetResPhase (TData freq) const |
Returns the Phase of a given frequency in residual Spectrum. | |
TData | GetResPhase (TIndex pos) const |
Returns the Phase of the spectrum related to a position in the residual Spectrum array. | |
void | SetResMag (TData freq, TData newMag) |
Replaces the Magnitude of the specified Frequency in the residual Spectrum with the value indicated. | |
void | SetResMag (TIndex pos, TData newMag) |
Replaces the Magnitude of the specified position in the residual Spectrum array with the value indicated. | |
void | SetResPhase (TData freq, TData newPhase) |
Replaces the Phase of the specified Frequency in the residual Spectrum with the value indicated. | |
void | SetResPhase (TIndex pos, TData newPhase) |
Replaces the Phase of the specified position in the residual Spectrum array with the value indicated. | |
TData | GetFundamentalFreq (TIndex pos=0) const |
Returns the fundamental frequency at a given index. | |
TData | GetFundamentalErr (TIndex pos=0) |
Returns the error of the candidate of a given index. | |
void | SetFundamentalFreq (TIndex pos, TData newFreq) const |
Modifies the frequency of a candidate at a given index. | |
void | SetFundamentalErr (TIndex pos, TData newErr) const |
Modifies the error of a candidate at a given index. | |
bool | operator== (const Frame &newFrame) const |
If both frames have the same center time (value of time in the center of the frame this method will return true; false otherwise. | |
bool | operator!= (const Frame &newFrame) const |
If center time of two frames is different will return true. | |
bool | operator< (const Frame &newFrame) const |
If this frame is centered in a time inferior relative to the frame passed by parameter will return true; false otherwise. | |
bool | operator<= (const Frame &newFrame) const |
If this frame is centered in a time inferior or equal in relation with the frame passed by parameter will return true; false otherwise. | |
bool | operator> (const Frame &newFrame) const |
If this frame is centered in a time superior relative to the frame passed by parameter will return true; false otherwise. | |
bool | operator>= (const Frame &newFrame) const |
If this frame is centered in a time superior or equal in relation with the frame passed by parameter will return true; false otherwise. | |
Protected Member Functions | |
void | DefaultInit () |
The concrete dynamic type constructor calls DefaultInit(). |
CLAM::Frame::DYNAMIC_TYPE_USING_INTERFACE | ( | Frame | , | |
14 | , | |||
ProcessingData | ||||
) |
CLAM::Frame::DYN_ATTRIBUTE | ( | 0 | , | |
public | , | |||
TData | , | |||
CenterTime | ||||
) |
Value of time in the center of the frame in miliseconds.
CLAM::Frame::DYN_ATTRIBUTE | ( | 3 | , | |
public | , | |||
Spectrum | , | |||
SinusoidalAnalSpectrum | ||||
) |
CLAM::Frame::DYN_ATTRIBUTE | ( | 4 | , | |
public | , | |||
SpectralPeakArray | , | |||
SpectralPeakArray | ||||
) |
Vector of peaks in spectral analysis.
CLAM::Frame::DYN_ATTRIBUTE | ( | 5 | , | |
public | , | |||
Fundamental | , | |||
Fundamental | ||||
) |
Fundamental frequency of the information being analyzed.
CLAM::Frame::DYN_ATTRIBUTE | ( | 6 | , | |
public | , | |||
Spectrum | , | |||
OutSpec | ||||
) |
Output global spectrum.
CLAM::Frame::DYN_ATTRIBUTE | ( | 8 | , | |
public | , | |||
Spectrum | , | |||
SinusoidalSpec | ||||
) |
Sinusoidal spectrum of the Audio.
CLAM::Frame::DYN_ATTRIBUTE | ( | 10 | , | |
public | , | |||
Audio | , | |||
SinusoidalAudioFrame | ||||
) |
Sinusoidal synthesized Audio.
CLAM::Frame::DYN_ATTRIBUTE | ( | 13 | , | |
public | , | |||
bool | , | |||
IsHarmonic | ||||
) |
Is a harmonic frame or not.
void CLAM::Frame::DefaultInit | ( | void | ) | [protected] |
The concrete dynamic type constructor calls DefaultInit().
This allows user to initialize his/her object. But we define DefaultInit() here because we don't want to force writting one DefaultInit() function for each concrete dynamic type. If a dynamic type concrete class defines some (not-default) constructors, this should also call the DefaultInit().
Reimplemented from CLAM::DynamicType.
Definition at line 34 of file Frame.cxx.
References CLAM::DynamicType::UpdateData().
SpectralPeak CLAM::Frame::GetSpectralPeak | ( | TIndex | pos | ) | const |
SpectralPeak CLAM::Frame::GetThruIndexSpectralPeak | ( | TIndex | pos | ) | const |
void CLAM::Frame::SetSpectralPeak | ( | TIndex | pos, | |
const SpectralPeak & | spectralPeak, | |||
TIndex | index = -1 | |||
) |
This method allows to change values of a Spectral Peak given its position in the array.
pos | Position of Peak Array to modify | |
spectralPeak | New spectralPeak | |
inde | Index value of the given SpectralPeak, set by default to -1 |
void CLAM::Frame::InsertSpectralPeak | ( | TIndex | pos, | |
const SpectralPeak & | spectralPeak, | |||
bool | insertIndex = false , |
|||
TIndex | index = -1 | |||
) |
Inserts a peak at the given position.
pos | Position in the array where we want to insert the new peak | |
spectralPeak | New spectralPeak to insert | |
insertIndex | Value indicating if the index array should be modified, set by default to false | |
index | Value of the given SpectralPeak, set by default to -1 |
void CLAM::Frame::AddSpectralPeak | ( | const SpectralPeak & | spectralPeak, | |
bool | addIndex = false , |
|||
TIndex | index = -1 | |||
) |
Inserts a peak at the end of Spectral Array.
spectralPeak | New spectralPeak to insert | |
addIndex | Value indicating if the index array should be modified, set by default to false | |
index | Value of the given SpectralPeak, set by default to -1 |
Returns the fundamental frequency at a given index.
pos | Position of candidate we want to get frequency value |
Definition at line 144 of file Frame.cxx.
Referenced by CLAM::FrameInterpolator::Do().