Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

XAudio2_8.dll is missing error on Windows 7 #98

Open
mizutechvoip opened this issue Jan 31, 2017 · 18 comments
Open

XAudio2_8.dll is missing error on Windows 7 #98

mizutechvoip opened this issue Jan 31, 2017 · 18 comments

Comments

@mizutechvoip
Copy link

mizutechvoip commented Jan 31, 2017

The application fails to start on Windows 7 with the following message box:

espeak-ng.exe - System Error: The program can't start because XAudio2_8.dll is missing from your computer. Try reinstalling to fix this problem.

Windows 7 Ultimate 64 bit Service Pack 1 with all the windows updates installed.

Maybe these helps:

If I am right, you are using this for playback only. If this issue can't be fixed then it would help a lot if these (libraries required for playback) could be loaded on demand, so at least we could use eSpeak to generate wave files ...that is the hard part which needs to be solved. playback can be done with any audio player.

--- Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/41502822-xaudio2_8-dll-is-missing-error-on-windows-7?utm_campaign=plugin&utm_content=tracker%2F254964&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F254964&utm_medium=issues&utm_source=github).
@dputler
Copy link

dputler commented Feb 1, 2017

Yes, I'm only trying this on playback. The last release of eSpeak (1.48.04) does work on Windows 7, so it may make sense to indicate that Windows 8 and above is required for eSpeak NG, and point users to the last release of eSpeak if the issue cannot be addressed in the eSpeak NG code base.

@mizutechvoip
Copy link
Author

The last release of eSpeak (1.48.04) does work on Windows 7

"Does work" or "Does NOT work"?

There is an "eSpeak" and a "eSpeak NG" which are different?

Can you point me to some downloadable executable or installer which works also on Windows 7? (eSpeak or eSpeak NG, even if it is an old version)

Sorry, I am a bit lost. I just meet this software last week and seems to be useful for one of our partners.

@rhdunn
Copy link
Owner

rhdunn commented Feb 1, 2017

The eSpeak official releases are available at http://espeak.sourceforge.net/download.html and the latest development release at http://espeak.sourceforge.net/test/latest.html. I don't know if/how well this supports Windows 7.

@rhdunn
Copy link
Owner

rhdunn commented Feb 1, 2017

"eSpeak" is the original program developed by Jonathan Duddington, who has not updated eSpeak for over 2 years. "eSpeak NG" is the effort to continue making improvements to the original eSpeak codebase, keeping those versions separate from eSpeak should Jonathan want to continue developing the original eSpeak in the future.

@dputler
Copy link

dputler commented Feb 1, 2017

I'm having no problems running the last official release of eSpeak (1.48.04) on Win 7, including with the use of MBROLA voice files.

@mizutechvoip
Copy link
Author

Thank you for the quick answer.
I think that the conclusion here for you is that

  • the lack of Windows 7 support need to be mentioned in the readme
  • the "Fail gracefully if XAudio2_8.dll is not present" issue should be also resoved
  • and/or need to be fixed (later?) to make it work also on Windows 7

@dputler
Copy link

dputler commented Feb 2, 2017

My opinion, with the caveat I'm a user, and not a developer, of this project is that it is a bit too soon to deprecate Windows 7. I think you and I submitted the same issue within hours of one another, and it hadn't been raised before, so my sense is this issue is fairly new.

@gherson
Copy link

gherson commented Jul 25, 2017

Running https://github.com/espeak-ng/espeak-ng/releases/download/1.49.1/espeak-ng-x64.msi on my Windows 7 (with recent Windows Updates applied; "Build 7601: Service Pack 1") resulted in only "XAudio2_8.dll is missing from your computer".
Attempts to correct:

  1. Installing "DirectX End-User Runtimes (June 2010)" didn't make a difference.
  2. Putting this XAudio2_8.dll into my C:\Windows\System32 folder changed eSpeak NG's error to "The application was unable to start correctly (0xc000007b). Click OK to close the application."

So I don't think Windows 7 is currently supported by eSpeak NG.
I would like to use eSpeak NG for playback only.

@gherson
Copy link

gherson commented Jul 25, 2017

When I went to try a download of https://github.com/espeak-ng/espeak-ng/releases/download/1.49.1/[espeak-ng-x86.msi](https://github.com/espeak-ng/espeak-ng/releases/download/1.49.1/espeak-ng-x86.msi) just now, Google Chrome objects with "Deceptive site ahead Attackers on github-production-release-asset-2e65be.s3.amazonaws.com may trick you into doing something dangerous like installing software or revealing your personal information (for example, passwords, phone numbers, or credit cards)."

@knudvaneeden
Copy link

knudvaneeden commented Jan 24, 2018

  1. I would really very much like to run eSpeak-NG on Microsoft Windows version 7.
  2. I tried with different versions of eSpeak-NG
    https://github.com/espeak-ng/espeak-ng/releases
  3. But you always get this error:
    a) "The program can't start because XAudio2_8.dll is missing from your computer. Try reinstalling the program to fix this problem."
    b) To fix it, I downloaded XAudio2_8.dll from
    http://www.dll-found.com/download/x/XAudio2_8.dll
    and unzipped it.
    Then copied the file to c:\windows\system32
    Then did run eSpeak-NG again.
    c) But then a new error occurred after running espeak-ng.exe:
    "The procedure entry point WaitForSingleObject could not be located in the dynamic link library api-ms-win-core-synch-l1-2-0.dll"
    d) So when checking if I found this DLL in c:\windows\system32 it showed it was already there by default in Microsoft Windows 7.
    It means that it can not find 'WaitForSingleObject' in that DLL.
    So not much to try anymore to resolve it, as that DLL is already given and present there.
  1. So it looks like that issue with the DLL is not resolved:
    Thus downloading (e.g. from Microsoft DirectX SDK (a 500 megabytes download by the way) or from other sources) that xaudio2_8.dll issue is not resolved.
    See also:

rhdunn/pcaudiolib#9

Thanks very much in advance for any advice to let it run on Microsoft Windows 7 and or to create a fix for it on Microsoft Windows 7.

@mse2
Copy link

mse2 commented Jan 27, 2018

I am integrating eSpeakNG support to MSEide+MSEgui:
https://sourceforge.net/projects/mseide-msegui/
https://gitlab.com/mseide-msegui/mseide-msegui
I extended eSpeakNG with the possibility to cancel speech operations in synchronous mode from another thread:
https://gitlab.com/mseide-msegui/espeak-ngsync
Binaries are here:
https://sourceforge.net/projects/mseuniverse/files/eSpeakNG/
libespeak-ngsync7.dll has been compiled for Windows 7. espeak-ng.exe works for me on Windows 7 if the name will be changed to libespeak-ng.dll.

@knudvaneeden
Copy link

knudvaneeden commented Jan 27, 2018 via email

@soilstack
Copy link

@knudvaneeden I tried your suggestion for getting espeak-ng to work on win7. I switched the dll out as advised. Alas, the espeak-ng.exe doesn't throw the dll exception anymore, but it just silently hangs. This is from both launching from the file window, as well as a command terminal:
C:\Program Files\eSpeak NG>espeak-ng.exe -v en "test"

@mse2
Copy link

mse2 commented Jan 28, 2018

What happens if you run it in terminal by "espeak-ng.exe --voices"?
Can you enter several words by pressing the enter-key between the words in terminal if started by "espeak-ng.exe"?

@knudvaneeden
Copy link

knudvaneeden commented Jan 28, 2018 via email

@knudvaneeden
Copy link

knudvaneeden commented Jan 28, 2018 via email

@knudvaneeden
Copy link

knudvaneeden commented Jan 28, 2018 via email

@mse2
Copy link

mse2 commented Feb 4, 2018

There is a new version (libespeak-ngwo.dll) which uses the waveOut API instead of Xaudio2. It should work on older Windows versions too.
espeak-ng#392

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

7 participants