diff src/scalar.c @ 205:f6fcf3bec020

Add xtract_midicent() convenience function to convert from frequency to MIDI cent
author Jamie Bullock <jamie@jamiebullock.com>
date Tue, 11 Mar 2014 18:14:45 +0000
parents 951035634fb1
children c6488df9e5c0
line wrap: on
line diff
--- a/src/scalar.c	Fri Mar 07 22:14:55 2014 +0000
+++ b/src/scalar.c	Tue Mar 11 18:14:45 2014 +0000
@@ -983,4 +983,15 @@
     return XTRACT_SUCCESS;
 }
 
+int xtract_midicent(const double *data, const int N, const void *argv, double *result)
+{
+    double f0 = *(double *)argv;
+    double note = 0.0;
+    
+    note = 69 + log(f0 / 440.f) * 17.31234;
+    note *= 100;
+    note = round(note);
+    
+    return XTRACT_SUCCESS;
+}