Hi, I want to record audio on mac. Ive seen that the function SPBRecord does what i need. (http://developer.apple.com/documentation/QuickTime/INMAC/SOUND/imsoundinput.19.htm)
This function is wrapped in the Carbon.Snd python library. My problem is that i need to pass a SPBOjb parameter and im unable to create an object of that kind. Checking the source i see that the only reference i find to SPBObj_New is in the Snd_SPB function, wich is referenced as SPB in the module. static PyObject *Snd_SPB(PyObject *_self, PyObject *_args) { PyObject *_res = NULL; _res = SPBObj_New(); return _res; } static PyMethodDef Snd_methods[] = { {"SPB", (PyCFunction)Snd_SPB, 1, PyDoc_STR(NULL)}, ... } But when i try to create a SPB in python i get: >>> import Carbon.Snd as snd >>> snd.SPB() Traceback (most recent call last): File "<stdin>", line 1, in ? TypeError: cannot create '_Snd.SPB' instances >>> Looking around in the code i see that: void init_Snd(void) { PyObject *m; m = Py_InitModule("_Snd", Snd_methods); ... PyModule_AddObject(m, "SPB", (PyObject *)&SPB_Type); ... } Is this overriding the other definition? I think so, from doing: >>> type(snd.SPB) <type 'type'> >>> How i am supposed to create a SPB object? I even tried using snd.SPB as a base class but it would not work. Any ideas? Lucio _______________________________________________ Pythonmac-SIG maillist - Pythonmac-SIG@python.org http://mail.python.org/mailman/listinfo/pythonmac-sig