The Open Master Hearing Aid (openMHA)  openMHA
Open community platform for hearing aid algorithm research
fshift_hilbert::hilbert_shifter_t Class Reference
Inheritance diagram for fshift_hilbert::hilbert_shifter_t:
Inheritance graph

Public Member Functions

 hilbert_shifter_t (unsigned int fftlen, unsigned int channels, mha_real_t srate, unsigned int kmin, unsigned int kmax, std::vector< mha_real_t > dphi, unsigned int frameshift, unsigned int maxirslen, unsigned int phasemode)
 
 ~hilbert_shifter_t ()
 
void process (mha_spec_t *)
 
- Public Member Functions inherited from MHASignal::spectrum_t
 spectrum_t (const unsigned int &frames, const unsigned int &channels)
 constructor of spectrum class More...
 
 spectrum_t (const mha_spec_t &)
 Copy constructor. More...
 
 spectrum_t (const MHASignal::spectrum_t &)
 Copy constructor. More...
 
 spectrum_t (const std::vector< mha_complex_t > &)
 
virtual ~spectrum_t (void)
 
mha_complex_toperator() (unsigned int f, unsigned int ch)
 Access to element. More...
 
mha_complex_toperator[] (unsigned int k)
 Access to a single element, direct index into data buffer. More...
 
mha_complex_tvalue (unsigned int f, unsigned int ch)
 Access to element. More...
 
void copy (const mha_spec_t &)
 copy all elements from a spectrum More...
 
void copy_channel (const mha_spec_t &s, unsigned sch, unsigned dch)
 Copy one channel of a given spectrum signal to a target channel. More...
 
void export_to (mha_spec_t &)
 copy elements to spectrum structure More...
 
void scale (const unsigned int &, const unsigned int &, const unsigned int &, const mha_real_t &)
 scale section [a,b) in channel "ch" by "val" More...
 
void scale_channel (const unsigned int &, const mha_real_t &)
 scale all elements in one channel More...
 

Private Attributes

MHASignal::spectrum_t fullspec
 Part of the spectrum to be frequency shifted. More...
 
MHASignal::spectrum_t analytic
 Analytic signal, defined as a(t)=x(t)+i*H(x(t)) More...
 
MHASignal::waveform_t shifted
 The frequency shifted signal in the time domain. More...
 
MHASignal::spectrum_t mixw_shift
 Helper varaible containing the coefficients used to split the spectrum. More...
 
MHASignal::spectrum_t mixw_ref
 Helper varaible containing the coefficients used to split the spectrum. More...
 
fftw_plan plan_spec2analytic
 FFT plan for the transformation of fullspec into the time domain. More...
 
mha_fft_t mhafft
 MHA wrapper object for fftw. More...
 
MHASignal::waveform_t df
 Vector holding one delta f value for every channel. More...
 
unsigned int kmin
 FFT frame that corresponds to f_min. More...
 
unsigned int kmax
 FFT frame that corresponds to f_max. More...
 
unsigned int frameshift
 Total phase advance within one fragment. More...
 
std::vector< mha_complex_tdelta_phi
 Phase advance per frame. More...
 
std::vector< mha_complex_tdelta_phi_total
 Sum of all phase advances. More...
 

Additional Inherited Members

- Public Attributes inherited from mha_spec_t
mha_complex_tbuf
 signal buffer More...
 
unsigned int num_channels
 number of channels More...
 
unsigned int num_frames
 number of frames in each channel More...
 
mha_channel_info_tchannel_info
 detailed channel description More...
 

Constructor & Destructor Documentation

◆ hilbert_shifter_t()

fshift_hilbert::hilbert_shifter_t::hilbert_shifter_t ( unsigned int  fftlen,
unsigned int  channels,
mha_real_t  srate,
unsigned int  kmin,
unsigned int  kmax,
std::vector< mha_real_t dphi,
unsigned int  frameshift,
unsigned int  maxirslen,
unsigned int  phasemode 
)

◆ ~hilbert_shifter_t()

fshift_hilbert::hilbert_shifter_t::~hilbert_shifter_t ( )

Member Function Documentation

◆ process()

void fshift_hilbert::hilbert_shifter_t::process ( mha_spec_t s)

Member Data Documentation

◆ fullspec

MHASignal::spectrum_t fshift_hilbert::hilbert_shifter_t::fullspec
private

Part of the spectrum to be frequency shifted.

◆ analytic

MHASignal::spectrum_t fshift_hilbert::hilbert_shifter_t::analytic
private

Analytic signal, defined as a(t)=x(t)+i*H(x(t))

◆ shifted

MHASignal::waveform_t fshift_hilbert::hilbert_shifter_t::shifted
private

The frequency shifted signal in the time domain.

◆ mixw_shift

MHASignal::spectrum_t fshift_hilbert::hilbert_shifter_t::mixw_shift
private

Helper varaible containing the coefficients used to split the spectrum.

Contains 1 for every fft bin to be frequency shifted, 0 for all others

◆ mixw_ref

MHASignal::spectrum_t fshift_hilbert::hilbert_shifter_t::mixw_ref
private

Helper varaible containing the coefficients used to split the spectrum.

Contains 0 for every fft bin to be frequency shifted, 1 for all others

◆ plan_spec2analytic

fftw_plan fshift_hilbert::hilbert_shifter_t::plan_spec2analytic
private

FFT plan for the transformation of fullspec into the time domain.

◆ mhafft

mha_fft_t fshift_hilbert::hilbert_shifter_t::mhafft
private

MHA wrapper object for fftw.

◆ df

MHASignal::waveform_t fshift_hilbert::hilbert_shifter_t::df
private

Vector holding one delta f value for every channel.

◆ kmin

unsigned int fshift_hilbert::hilbert_shifter_t::kmin
private

FFT frame that corresponds to f_min.

◆ kmax

unsigned int fshift_hilbert::hilbert_shifter_t::kmax
private

FFT frame that corresponds to f_max.

◆ frameshift

unsigned int fshift_hilbert::hilbert_shifter_t::frameshift
private

Total phase advance within one fragment.

◆ delta_phi

std::vector<mha_complex_t> fshift_hilbert::hilbert_shifter_t::delta_phi
private

Phase advance per frame.

◆ delta_phi_total

std::vector<mha_complex_t> fshift_hilbert::hilbert_shifter_t::delta_phi_total
private

Sum of all phase advances.


The documentation for this class was generated from the following file: