| Index: third_party/opus/src/src/analysis.h
|
| diff --git a/third_party/opus/src/src/analysis.h b/third_party/opus/src/src/analysis.h
|
| index 9eae56a525378a3602444ce960957d44bf91fa61..cac51dfa4eb55d8d1abbb0dee9f070463542df1d 100644
|
| --- a/third_party/opus/src/src/analysis.h
|
| +++ b/third_party/opus/src/src/analysis.h
|
| @@ -33,13 +33,20 @@
|
|
|
| #define NB_FRAMES 8
|
| #define NB_TBANDS 18
|
| -#define NB_TOT_BANDS 21
|
| -#define ANALYSIS_BUF_SIZE 720 /* 15 ms at 48 kHz */
|
| +#define ANALYSIS_BUF_SIZE 720 /* 30 ms at 24 kHz */
|
|
|
| -#define DETECT_SIZE 200
|
| +/* At that point we can stop counting frames because it no longer matters. */
|
| +#define ANALYSIS_COUNT_MAX 10000
|
| +
|
| +#define DETECT_SIZE 100
|
| +
|
| +/* Uncomment this to print the MLP features on stdout. */
|
| +/*#define MLP_TRAINING*/
|
|
|
| typedef struct {
|
| int arch;
|
| + int application;
|
| + opus_int32 Fs;
|
| #define TONALITY_ANALYSIS_RESET_START angle
|
| float angle[240];
|
| float d_angle[240];
|
| @@ -48,21 +55,22 @@ typedef struct {
|
| int mem_fill; /* number of usable samples in the buffer */
|
| float prev_band_tonality[NB_TBANDS];
|
| float prev_tonality;
|
| + int prev_bandwidth;
|
| float E[NB_FRAMES][NB_TBANDS];
|
| + float logE[NB_FRAMES][NB_TBANDS];
|
| float lowE[NB_TBANDS];
|
| float highE[NB_TBANDS];
|
| - float meanE[NB_TOT_BANDS];
|
| + float meanE[NB_TBANDS+1];
|
| float mem[32];
|
| float cmean[8];
|
| float std[9];
|
| float music_prob;
|
| + float vad_prob;
|
| float Etracker;
|
| float lowECount;
|
| int E_count;
|
| int last_music;
|
| - int last_transition;
|
| int count;
|
| - float subframe_mem[3];
|
| int analysis_offset;
|
| /** Probability of having speech for time i to DETECT_SIZE-1 (and music before).
|
| pspeech[0] is the probability that all frames in the window are speech. */
|
| @@ -77,6 +85,8 @@ typedef struct {
|
| int write_pos;
|
| int read_pos;
|
| int read_subframe;
|
| + float hp_ener_accum;
|
| + opus_val32 downmix_state[3];
|
| AnalysisInfo info[DETECT_SIZE];
|
| } TonalityAnalysisState;
|
|
|
| @@ -86,7 +96,7 @@ typedef struct {
|
| * not be repeated every analysis step. No allocated memory is retained
|
| * by the state struct, so no cleanup call is required.
|
| */
|
| -void tonality_analysis_init(TonalityAnalysisState *analysis);
|
| +void tonality_analysis_init(TonalityAnalysisState *analysis, opus_int32 Fs);
|
|
|
| /** Reset a TonalityAnalysisState stuct.
|
| *
|
|
|