diff options
author | russell <russell@f38db490-d61c-443f-a65b-d21fe96a405b> | 2008-01-19 00:19:29 +0000 |
---|---|---|
committer | russell <russell@f38db490-d61c-443f-a65b-d21fe96a405b> | 2008-01-19 00:19:29 +0000 |
commit | f8247040e6231c4b3b5099ea3a526348b7941566 (patch) | |
tree | 0cc92ad6ebf6ae49a62f6e7ef8ec819121d63630 /trunk/codecs/lpc10/energy.c | |
parent | d88e56c61ce2042544c1a8a71c93b69ab2e6ffba (diff) |
Creating tag for the release of asterisk-1.6.0-beta1v1.6.0-beta1
git-svn-id: http://svn.digium.com/svn/asterisk/tags/1.6.0-beta1@99163 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'trunk/codecs/lpc10/energy.c')
-rw-r--r-- | trunk/codecs/lpc10/energy.c | 103 |
1 files changed, 103 insertions, 0 deletions
diff --git a/trunk/codecs/lpc10/energy.c b/trunk/codecs/lpc10/energy.c new file mode 100644 index 000000000..eada04bef --- /dev/null +++ b/trunk/codecs/lpc10/energy.c @@ -0,0 +1,103 @@ +/* + +$Log$ +Revision 1.15 2004/06/26 03:50:14 markster +Merge source cleanups (bug #1911) + +Revision 1.14 2003/02/12 13:59:15 matteo +mer feb 12 14:56:57 CET 2003 + +Revision 1.1.1.1 2003/02/12 13:59:15 matteo +mer feb 12 14:56:57 CET 2003 + +Revision 1.2 2000/01/05 08:20:39 markster +Some OSS fixes and a few lpc changes to make it actually work + + * Revision 1.1 1996/08/19 22:32:17 jaf + * Initial revision + * + +*/ + +/* -- translated by f2c (version 19951025). + You must link the resulting object file with the libraries: + -lf2c -lm (in that order) +*/ + +#include "f2c.h" + +#ifdef P_R_O_T_O_T_Y_P_E_S +extern int energy_(integer *len, real *speech, real *rms); +#endif + +/* ********************************************************************* */ + +/* ENERGY Version 50 */ + +/* $Log$ + * Revision 1.15 2004/06/26 03:50:14 markster + * Merge source cleanups (bug #1911) + * + * Revision 1.14 2003/02/12 13:59:15 matteo + * mer feb 12 14:56:57 CET 2003 + * + * Revision 1.1.1.1 2003/02/12 13:59:15 matteo + * mer feb 12 14:56:57 CET 2003 + * + * Revision 1.2 2000/01/05 08:20:39 markster + * Some OSS fixes and a few lpc changes to make it actually work + * + * Revision 1.1 1996/08/19 22:32:17 jaf + * Initial revision + * */ +/* Revision 1.3 1996/03/18 21:17:41 jaf */ +/* Just added a few comments about which array indices of the arguments */ +/* are used, and mentioning that this subroutine has no local state. */ + +/* Revision 1.2 1996/03/13 16:46:02 jaf */ +/* Comments added explaining that none of the local variables of this */ +/* subroutine need to be saved from one invocation to the next. */ + +/* Revision 1.1 1996/02/07 14:45:40 jaf */ +/* Initial revision */ + + +/* ********************************************************************* */ + +/* Compute RMS energy. */ + +/* Input: */ +/* LEN - Length of speech buffer */ +/* SPEECH - Speech buffer */ +/* Indices 1 through LEN read. */ +/* Output: */ +/* RMS - Root Mean Square energy */ + +/* This subroutine has no local state. */ + +/* Subroutine */ int energy_(integer *len, real *speech, real *rms) +{ + /* System generated locals */ + integer i__1; + + /* Builtin functions */ + double sqrt(doublereal); + + /* Local variables */ + integer i__; + +/* Arguments */ +/* Local variables that need not be saved */ + /* Parameter adjustments */ + --speech; + + /* Function Body */ + *rms = 0.f; + i__1 = *len; + for (i__ = 1; i__ <= i__1; ++i__) { + *rms += speech[i__] * speech[i__]; + } + *rms = (real)sqrt(*rms / *len); + return 0; +} /* energy_ */ + |