opus_int16 bitexact_cos(opus_int16 x); int bitexact_log2tan(int isin,int icos);
/** Compute the amplitude (sqrt energy) in each of the bands *@parammModedata *@paramXSpectrum *@parambandESquarerootoftheenergyforeachband(returned)
*/ void compute_band_energies(const CELTMode *m, const celt_sig *X, celt_ener *bandE, int end, int C, int LM, int arch);
/** Normalise each band of X such that the energy in each band is equalto1 *@parammModedata *@paramXSpectrum(returnednormalised) *@parambandESquarerootoftheenergyforeachband
*/ void normalise_bands(const CELTMode *m, const celt_sig * OPUS_RESTRICT freq, celt_norm * OPUS_RESTRICT X, const celt_ener *bandE, int end, int C, int M);
/** Denormalise each band of X to restore full amplitude *@parammModedata *@paramXSpectrum(returnedde-normalised) *@parambandESquarerootoftheenergyforeachband
*/ void denormalise_bands(const CELTMode *m, const celt_norm * OPUS_RESTRICT X,
celt_sig * OPUS_RESTRICT freq, const celt_glog *bandE, int start, int end, int M, int downsample, int silence);
int spreading_decision(const CELTMode *m, const celt_norm *X, int *average, int last_decision, int *hf_average, int *tapset_decision, int update_hf, int end, int C, int M, constint *spread_weight);
#ifdef MEASURE_NORM_MSE void measure_norm_mse(const CELTMode *m, float *X, float *X0, float *bandE, float *bandE0, int M, int N, int C); #endif
void haar1(celt_norm *X, int N0, int stride);
/** Quantisation/encoding of the residual spectrum *@paramencodeflagthatindicateswhetherwe'reencoding(1)ordecoding(0) *@parammModedata *@paramstartFirstbandtoprocess *@paramendLastbandtoprocess+1 *@paramXResidual(normalised) *@paramYResidual(normalised)forsecondchannel(orNULLformono) *@paramcollapse_masksAnti-collapsetrackingmask *@parambandESquarerootoftheenergyforeachband *@parampulsesBitallocation(perband)forPVQ *@paramshortBlocksZeroforlongblocks,non-zeroforshortblocks *@paramspreadAmountofspreadingtouse *@paramdual_stereoZeroforMSstereo,non-zerofordualstereo *@paramintensityFirstbandtouseintensitystereo *@paramtf_resTime-frequencyresolutionchange *@paramtotal_bitsTotalnumberofbitsthatcanbeusedfortheframe(includingtheonesalreadyspent) *@parambalanceNumberofunallocatedbits *@paramenEntropycoderstate *@paramLMlog2()ofthenumberof2.5subframesintheframe *@paramcodedBandsLastbandtoreceivebits+1 *@paramseedRandomgeneratorseed *@paramarchRun-timearchitecture(seeopus_select_arch())
*/ void quant_all_bands(int encode, const CELTMode *m, int start, int end,
celt_norm * X, celt_norm * Y, unsignedchar *collapse_masks, const celt_ener *bandE, int *pulses, int shortBlocks, int spread, int dual_stereo, int intensity, int *tf_res, opus_int32 total_bits,
opus_int32 balance, ec_ctx *ec, int M, int codedBands, opus_uint32 *seed, int complexity, int arch, int disable_inv
ARG_QEXT(ec_ctx *ext_ec) ARG_QEXT(int *extra_pulses)
ARG_QEXT(opus_int32 total_ext_bits) ARG_QEXT(constint *cap));
void anti_collapse(const CELTMode *m, celt_norm *X_, unsignedchar *collapse_masks, int LM, int C, int size, int start, int end, const celt_glog *logE, const celt_glog *prev1logE, const celt_glog *prev2logE, constint *pulses, opus_uint32 seed, int encode, int arch);
opus_uint32 celt_lcg_rand(opus_uint32 seed);
int hysteresis_decision(opus_val16 val, const opus_val16 *thresholds, const opus_val16 *hysteresis, int N, int prev);
#endif/* BANDS_H */
Messung V0.5 in Prozent
¤ Dauer der Verarbeitung: 0.12 Sekunden
(vorverarbeitet am 2026-09-28)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.