1 #include "aubio-types.h"
4 Py_aubio_window(PyObject *self, PyObject *args)
6 char_t *wintype = NULL;
10 if (!PyArg_ParseTuple (args, "|sI", &wintype, &winlen)) {
14 window = new_aubio_window(wintype, winlen);
16 PyErr_SetString (PyExc_ValueError, "failed computing window");
20 return (PyObject *) PyAubio_CFvecToArray(window);
24 Py_aubio_level_lin(PyObject *self, PyObject *args)
30 if (!PyArg_ParseTuple (args, "O:level_lin", &input)) {
38 if (!PyAubio_ArrayToCFvec(input, &vec)) {
42 level_lin = Py_BuildValue(AUBIO_NPY_SMPL_CHR, aubio_level_lin(&vec));
43 if (level_lin == NULL) {
44 PyErr_SetString (PyExc_ValueError, "failed computing level_lin");
52 Py_aubio_db_spl(PyObject *self, PyObject *args)
58 if (!PyArg_ParseTuple (args, "O:db_spl", &input)) {
66 if (!PyAubio_ArrayToCFvec(input, &vec)) {
70 db_spl = Py_BuildValue(AUBIO_NPY_SMPL_CHR, aubio_db_spl(&vec));
72 PyErr_SetString (PyExc_ValueError, "failed computing db_spl");
80 Py_aubio_silence_detection(PyObject *self, PyObject *args)
84 PyObject *silence_detection;
87 if (!PyArg_ParseTuple (args, "O" AUBIO_NPY_SMPL_CHR ":silence_detection", &input, &threshold)) {
95 if (!PyAubio_ArrayToCFvec(input, &vec)) {
99 silence_detection = Py_BuildValue("I", aubio_silence_detection(&vec, threshold));
100 if (silence_detection == NULL) {
101 PyErr_SetString (PyExc_ValueError, "failed computing silence_detection");
105 return silence_detection;
109 Py_aubio_level_detection(PyObject *self, PyObject *args)
113 PyObject *level_detection;
116 if (!PyArg_ParseTuple (args, "O" AUBIO_NPY_SMPL_CHR ":level_detection", &input, &threshold)) {
124 if (!PyAubio_ArrayToCFvec(input, &vec)) {
128 level_detection = Py_BuildValue(AUBIO_NPY_SMPL_CHR, aubio_level_detection(&vec, threshold));
129 if (level_detection == NULL) {
130 PyErr_SetString (PyExc_ValueError, "failed computing level_detection");
134 return level_detection;