Re: TTS Synthesis: D and vibe.d in Action
On Thursday, 14 April 2016 at 17:55:40 UTC, Ali Çehreli wrote: On 04/14/2016 03:57 AM, Chris wrote: What is CvDda>? Abbreviation of your name by Andre's email program: "Chris via Digitalmars-d-announce". :) Ali Oh deary me! That was a tough one for me :) Type CvDda into your search engine, the results are confusing.
Re: TTS Synthesis: D and vibe.d in Action
On 04/14/2016 03:57 AM, Chris wrote: What is CvDda>? Abbreviation of your name by Andre's email program: "Chris via Digitalmars-d-announce". :) Ali
Re: TTS Synthesis: D and vibe.d in Action
On Wednesday, 13 April 2016 at 19:09:46 UTC, Andre Polykanine wrote: Hello Chris, CvDda> Just to inform you that we successfully use D and vibe.d for two CvDda> things: This is just overwhelming! How do you make bindings to NVDA API which is in Python? I'm not an NVDA user (I'm using JAWS, if it matters), but I'm still very interested in the technology. Andre. Hi Andre, What is CvDda>? There are loads of different results in my search engine. To answer your question: in Python you can load DLLs via Python's ctypes. You just load the DLL via `CDLL()` or `cdll.LoadLibrary()`. It's relatively easy to make a Windows DLL in D. To make it accessible for Python's C-types, just expose your functions like so extern (C) { export void myFunction(){} } Of course, any arguments (at least on Windows) or return types should be C-style, i.e. `const char*` instead of `string`. To Python it all looks like C, it doesn't know about D. I've seen a plug-in written in Scheme and it is also loaded via Python's `CDLL()`. To bind a Python function to your DLL just do something like this (assuming you're in a class): // Load self.myDLL = CDLL("path/to/dll") If your function is void, just call it using // call void function in DLL self.myDLL.myFunciton(); If it returns something, you should first define the return value: // assign return type to function in Python self.myDLL.getError.restype = c_char_p To pass arguments, it's best to convert Python to C-types like so: // pass argument as C-type self.myDLL.myFunction(c_char_p("text")) It's all in the Python docs at https://docs.python.org/2/library/ctypes.html.
Re: TTS Synthesis: D and vibe.d in Action
Hello Chris, CvDda> Just to inform you that we successfully use D and vibe.d for two CvDda> things: This is just overwhelming! How do you make bindings to NVDA API which is in Python? I'm not an NVDA user (I'm using JAWS, if it matters), but I'm still very interested in the technology. Andre.
Re: TTS Synthesis: D and vibe.d in Action
On Tuesday, 12 April 2016 at 14:37:52 UTC, jamonahn wrote: On Tuesday, 12 April 2016 at 10:22:03 UTC, Chris wrote: ... http://www.ahg.gov.ie/ga/ [2] Just some confusion on my part -- this is the link to try it out. Congrats! What a wonderful inspiration! Thanks. I hope that more people and organizations will use it down the road.
Re: TTS Synthesis: D and vibe.d in Action
On Tuesday, 12 April 2016 at 17:41:32 UTC, wobbles wrote: On Tuesday, 12 April 2016 at 10:22:03 UTC, Chris wrote: Hi, Just to inform you that we successfully use D and vibe.d for two things: [...] Great to see some fellow Irish D users! Good to know I'm not the only one! I was already wondering how many people in Ireland actually use D! :-) It's either considered "exotic" or "never heard of".
Re: TTS Synthesis: D and vibe.d in Action
On Tuesday, 12 April 2016 at 10:22:03 UTC, Chris wrote: Hi, Just to inform you that we successfully use D and vibe.d for two things: [...] Great to see some fellow Irish D users!
Re: TTS Synthesis: D and vibe.d in Action
On Tuesday, 12 April 2016 at 10:22:03 UTC, Chris wrote: ... http://www.ahg.gov.ie/ga/ [2] Just some confusion on my part -- this is the link to try it out. Congrats! What a wonderful inspiration!