2016-04-26 20:35:51

Hello. I have an important question.
Is their something like accessible_output 2 for python 3? Or is their a quick way to make it work? I would not like to use python 2.7 just to use accessible_output.
The exact python version I am using is Python 3.4.3
Please and thank you.

2016-04-27 00:59:23 (edited by magurp244 2016-04-27 01:00:48)

It looks like Python 3 support may have been added to accessible_output 2 15 months ago as indicated here, though I can't really tell you more than that, hopefully someone else can chime in. Alternatively, you can also try out the python 3 port of Pyttsx over here.

-BrushTone v1.3.3: Accessible Paint Tool
-AudiMesh3D v1.0.0: Accessible 3D Model Viewer

2016-04-27 16:15:52

First, let me apologize for the wall of text.
Thank you for your swift reply. Unfortunately, accessible_output does not seem to be fully ported to python 3.
because when I tried to install it by pip, one of the requirements, pywin32, is not found.
I tried to import the python code after downloading it directly from the web site you gave me and it seems like their are so many errors. I will try again with another computer.
As for pyttsx, that when I downloaded it (by pip and with out pip), I just got a lot of errors with the driver files and stuff like that.

2016-04-27 16:46:44 (edited by Anton 2016-04-27 16:56:49)

Hi.
Accessible_output2, which is the latest version of  the package and is in fact ported to python, is not available on pypi.
You will have to manually install accessible_output2 and its dependencies by downloading them from The repository.
You will need accessible_output2 (not to be confused with accessible_output), libloader and platform utils.
Download the required packages and run setup.py install for each.
To get accessible_output2 to work, pip install pypiwin32 to install pywin32.
hth
[edit]
I forgot to mension some of accessible_output2's dependencies. Woops!
[/edit]

2016-04-27 18:58:02

Ok thank you. I believe that worked to a degree.
I could get the sapi5 module to speak but the one for nvda does not work.
Thanks for your input so far. I guess I could work with this.
Another solution I was looking into is using the google tts python package. it works, except as far as I can see,  the down side of this is that you have to make an object with the text as a perameter, and the language, and then you would save the file. And I guess I could for my software constantly remake and resave a file, but I have no clue on how much it could impact performance and weather or not you need internet connection for this to work.
I plan on making a software to help me draw basic shapes (with labels on them) and one feature I hope to have is the ability to press the arrow keys to go around the screen anouncing coardinates and when a shape is incountered, then I expect the tts to tell me what shape it is and the label if it has any.

2016-04-28 17:49:56

Hi.
Can you be more specific?
What error(s) are you getting?

2016-04-28 19:14:50

This is the code and the errors I get. (warning, it is a lot, and to me kind of sounds criptic but I wonder if it has anything to do with how I am using snapshot version of NVDA).
>>>import accessible_output2 as ao2
>>> tts = ao2.outputs.nvda.NVDA()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Users\Name\AppData\Roaming\Python\Python35\site-packages\accessible_o
utput2-0.12.dev0-py3.5.egg\accessible_output2\outputs\base.py", line 21, in __in
it__
    self.lib = load_library(self.lib64, cdll=self.cdll)
  File "C:\Users\Name\AppData\Roaming\Python\Python35\site-packages\accessible_o
utput2-0.12.dev0-py3.5.egg\accessible_output2\__init__.py", line 15, in load_lib
rary
    return ctypes.windll[libfile]
  File "C:\Users\Name\AppData\Local\Programs\Python\Python35\lib\ctypes\__init__
.py", line 422, in __getitem__
    return getattr(self, name)
  File "C:\Users\Name\AppData\Local\Programs\Python\Python35\lib\ctypes\__init__
.py", line 417, in __getattr__
    dll = self._dlltype(name)
  File "C:\Users\Name\AppData\Local\Programs\Python\Python35\lib\ctypes\__init__
.py", line 347, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: [WinError 126] The specified module could not be found

2016-04-29 13:22:20

Hi.
Seems like accessible_output can't find the nvda controler client library.
You'll need to copy the dlls to "C:\Users\Name\AppData\Roaming\Python\Python35\site-packages\accessible_output2-0.12.dev0-py3.5.egg\accessible_output2\lib.
You should be able to find the lib folder with all of the required dlls in the archive you downloaded from the Mercurial repository.

2016-04-29 15:09:24

Ok thank you very much I will try that.

2016-05-04 18:01:26

Hello,

Just to let you know that you can also use UniversalSpeech in python. Basicly it looks like :

>>> from ctypes import cdll
>>> cdll.UniversalSpeech.speechSay('Hello, world !', True)
1
There are 10 kinds of people : those who know binary, and those who don't.