SMS_AnalParams Struct Reference

structure with useful information for analysis functions More...

#include <sms.h>

Collaboration diagram for SMS_AnalParams:
Collaboration graph
[legend]

Data Fields

int iDebugMode
int iFormat
int iSoundType
int iStochasticType
int iFrameRate
int nStochasticCoeff
sfloat fLowestFundamental
sfloat fHighestFundamental
sfloat fDefaultFundamental
sfloat fPeakContToGuide
sfloat fFundContToGuide
sfloat fFreqDeviation
int iSamplingRate
int iDefaultSizeWindow
int sizeHop
sfloat fSizeWindow
int nTracks
int nGuides
int iCleanTracks
sfloat fMinRefHarmMag
sfloat fRefHarmMagDiffFromMax
int iRefHarmonic
int iMinTrackLength
int iMaxSleepingTime
sfloat fHighestFreq
sfloat fMinPeakMag
int iAnalysisDirection
int iSizeSound
int nFrames
int iWindowType
int iMaxDelayFrames
sfloat fResidualAccumPerc
int sizeNextRead
SMS_PeakParams peakParams
SMS_Data prevFrame
SMS_SEnvParams specEnvParams
SMS_SndBuffer soundBuffer
SMS_SndBuffer synthBuffer
SMS_AnalFramepFrames
SMS_AnalFrame ** ppFrames

Detailed Description

structure with useful information for analysis functions

Each analysis needs one of these, which contains all settings, sound data, deterministic synthesis data, and every other piece of data that needs to be shared between functions.

There is an array of already analyzed frames (hardcoded to 50 right now -

Todo:
make it variable) that are accumulated for good harmonic detection and partial tracking. For instance, once the fundamental frequency of a harmonic signal is located (after a few frames), the harmonic analysis and peak detection/continuation process can be re-computed with more accuracy.

Field Documentation

maximum deviation from peak to peak

Referenced by FillGap(), GetBestPeak(), sms_fillHeader(), sms_initAnalParams(), and sms_peakContinuation().

contribution of current fundamental to current guide (between 0 and 1)

Referenced by sms_fillHeader(), sms_initAnalParams(), and sms_peakContinuation().

highest frequency to be searched

Referenced by sms_fillHeader(), sms_initAnalParams(), sms_initAnalysis(), and sms_peakContinuation().

highest fundamental frequency in Hz

Referenced by sms_fillHeader(), sms_initAnalParams(), and sms_initAnalysis().

lowest fundamental frequency in Hz

Referenced by sms_fillHeader(), sms_initAnalParams(), and sms_initAnalysis().

minimum magnitude in dB for a good peak

Referenced by sms_fillHeader(), sms_initAnalParams(), and sms_initAnalysis().

minimum magnitude in dB for reference peak

Referenced by sms_fillHeader(), sms_initAnalParams(), and sms_initAnalysis().

contribution of previous peak to current guide (between 0 and 1)

Referenced by sms_fillHeader(), sms_initAnalParams(), and sms_peakContinuation().

maximum magnitude difference from reference peak to highest peak

Referenced by sms_fillHeader(), sms_initAnalParams(), and sms_initAnalysis().

accumalitive residual percentage

Referenced by sms_analyze(), and sms_initAnalParams().

size of analysis window in number of periods

Referenced by ReAnalyzeFrame(), sms_fillHeader(), sms_initAnalParams(), sms_initAnalysis(), and sms_sizeNextWindow().

analysis direction, direct or reverse

Referenced by sms_fillHeader(), sms_fillSoundBuffer(), and sms_initAnalParams().

whether or not to clean sinusoidal tracks

Referenced by sms_analyze(), sms_fillHeader(), and sms_initAnalParams().

sampling rate of sound to be analyzed default size of analysis window in samples

Referenced by sms_analyze(), sms_initAnalParams(), sms_initAnalysis(), and sms_sizeNextWindow().

analysis format code defined by SMS_Format

See also:
SMS_Format

Referenced by FillGap(), sms_analyze(), sms_analyzeFrame(), sms_cleanTracks(), sms_fillHeader(), sms_initAnalParams(), and sms_peakContinuation().

rate in Hz of data frames

Referenced by sms_fillHeader(), sms_initAnalParams(), and sms_initAnalysis().

maximum number of frames to delay before peak continuation

Referenced by sms_analyze(), sms_freeAnalysis(), sms_initAnalParams(), and sms_initAnalysis().

maximum sleeping time for a track

Referenced by DeleteShortTrack(), sms_cleanTracks(), sms_fillHeader(), sms_initAnalParams(), and sms_peakContinuation().

minimum length in samples of a given track

Referenced by FillGap(), sms_cleanTracks(), sms_fillHeader(), and sms_initAnalParams().

reference harmonic to use in the fundamental detection

Referenced by sms_fillHeader(), sms_initAnalParams(), and sms_initAnalysis().

total size of sound to be analyzed in samples

Referenced by sms_initAnalParams(), sms_initAnalysis(), and sms_initFrame().

type of sound to be analyzed

See also:
SMS_SOUND_TYPE

Referenced by sms_analyze(), sms_fillHeader(), sms_initAnalParams(), and sms_initAnalysis().

type of stochastic model defined by SMS_StocSynthType

See also:
SMS_StocSynthType

Referenced by sms_analyze(), sms_fillHeader(), sms_initAnalParams(), and sms_initAnalysis().

type of FFT analysis window

See also:
SMS_WINDOWS

Referenced by sms_analyzeFrame(), sms_fillHeader(), and sms_initAnalParams().

total number of frames that will be analyzed

Referenced by sms_fillHeader(), sms_initAnalParams(), and sms_initAnalysis().

number of guides used for peak detection and continuation

See also:
SMS_Guide

Referenced by GetBestPeak(), sms_cleanTracks(), sms_fillHeader(), sms_initAnalParams(), sms_initAnalysis(), sms_initFrame(), and sms_peakContinuation().

number of stochastic coefficients per frame

Referenced by sms_fillHeader(), sms_initAnalParams(), and sms_initAnalysis().

number of sinusoidal tracks in frame

Referenced by sms_fillHeader(), and sms_initAnalParams().

structure with parameters for spectral peaks

Referenced by sms_analyzeFrame(), and sms_initAnalysis().

an array of frames that have already been analyzed

Referenced by sms_freeAnalysis(), and sms_initAnalysis().

the previous analysis frame

Referenced by sms_analyze(), sms_freeAnalysis(), and sms_initAnalysis().

hop size of analysis window in samples

Referenced by FillGap(), sms_analyze(), sms_initAnalParams(), sms_initAnalysis(), sms_initFrame(), and sms_scaleDet().

size of samples to read from sound file next analysis

Referenced by sms_analyze(), and sms_initAnalysis().

all data for spectral enveloping

Referenced by sms_analyze(), sms_fillHeader(), sms_initAnalParams(), and sms_initAnalysis().

resynthesized signal used to create the residual

Referenced by sms_analyze(), sms_freeAnalysis(), and sms_initAnalysis().


The documentation for this struct was generated from the following file:
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines

Generated on Thu Oct 29 04:08:07 2009 for libsms by  doxygen 1.6.1