summaryrefslogtreecommitdiff
path: root/tutorials/sndkit/sblive/vu.mac
diff options
context:
space:
mode:
authorIgor Pashev <pashev.igor@gmail.com>2013-05-03 21:08:42 +0400
committerIgor Pashev <pashev.igor@gmail.com>2013-05-03 21:08:42 +0400
commit1058def8e7827e56ce4a70afb4aeacb5dc44148f (patch)
tree4495d23e7b54ab5700e3839081e797c1eafe0db9 /tutorials/sndkit/sblive/vu.mac
downloadoss4-1058def8e7827e56ce4a70afb4aeacb5dc44148f.tar.gz
Imported Upstream version 4.2-build2006upstream/4.2-build2006upstream
Diffstat (limited to 'tutorials/sndkit/sblive/vu.mac')
-rw-r--r--tutorials/sndkit/sblive/vu.mac27
1 files changed, 27 insertions, 0 deletions
diff --git a/tutorials/sndkit/sblive/vu.mac b/tutorials/sndkit/sblive/vu.mac
new file mode 100644
index 0000000..c563d98
--- /dev/null
+++ b/tutorials/sndkit/sblive/vu.mac
@@ -0,0 +1,27 @@
+/*
+ *
+ * This file is part of Open Sound System.
+ *
+ * Copyright (C) 4Front Technologies 1996-2008.
+ *
+ * This this source file is released under GPL v2 license (no other versions).
+ * See the COPYING file included in the main directory of this source
+ * distribution for the license terms and conditions.
+ *
+ */
+// VU meter computation macros
+//
+// Simple VU
+#define VU(vuvar, input) \
+ TSTNEG(VUTMP, input, input, 0);\
+ LIMIT(vuvar, vuvar, vuvar, VUTMP)
+/* VU meter with volume scaling */
+#define VUSCALE(vuvar, input, scale) \
+ MACS(VUTMP2, 0, input, scale) ;\
+ TSTNEG(VUTMP, VUTMP2, VUTMP2, 0);\
+ LIMIT(vuvar, vuvar, vuvar, VUTMP)
+/* VU meter with volume scaling and summing with a 'base' signal */
+#define VUSCALESUM(vuvar, basevar, input, scale) \
+ MACS(VUTMP2, basevar, input, scale) ;\
+ TSTNEG(VUTMP, VUTMP2, VUTMP2, 0);\
+ LIMIT(vuvar, vuvar, vuvar, VUTMP)