aboutsummaryrefslogtreecommitdiffstats
path: root/1.4.23-rc4/codecs/lpc10/energy.c
diff options
context:
space:
mode:
Diffstat (limited to '1.4.23-rc4/codecs/lpc10/energy.c')
-rw-r--r--1.4.23-rc4/codecs/lpc10/energy.c103
1 files changed, 103 insertions, 0 deletions
diff --git a/1.4.23-rc4/codecs/lpc10/energy.c b/1.4.23-rc4/codecs/lpc10/energy.c
new file mode 100644
index 000000000..eada04bef
--- /dev/null
+++ b/1.4.23-rc4/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_ */
+