aws-samples / amazon-polly-metahumans

This Unreal Engine sample project demonstrates how to bring Epic Games' MetaHuman digital characters to life using the Amazon Polly text-to-speech service from AWS. Use this project as a starting point for creating your own Unreal Engine applications that leverage Amazon Polly to give voice to your MetaHumans.
MIT No Attribution
178 stars 67 forks source link

Cannot build AmazonPollyMetahuman (and AmazonPolly is missing?) #8

Closed DrinkSlurp closed 2 years ago

DrinkSlurp commented 2 years ago

Hello, first let me thank you a lot for this project, it really is interesting.

I have followed the quick-guide to the letter, but I get 4 errors at the end with the .bat file.

When I try to open the .uproject file, I get:

Missing AmazonPollyMetaHuman Modules

The following modules are missing or built with a different engine version:

AmazonPollyMetaHuman

Would you like to rebuild them now?

After trying to compile, the error tells me to compile manually, which i have tried with both VS2022 and VS2019, but I still get errors.

I have tried a few times the zip downloaded, but I get different sizes each time (and can only be extracted with 7Zip). Git results in stable size.

I am using W10, UE4..26.2, VS2022 and VS20219.

I'm at my wits' end. Could anyone help here, please?

Legumtechnica commented 2 years ago

Any luck?

DrinkSlurp commented 2 years ago

Nope! I just finished cloning the SDK, created the project with Cmake_GUI and compiled with VS2019, but the project stills asks to rebuild and fails. Is there a specific folder in the project for the compiled SDK?

cwalkere commented 2 years ago

I'll try to reproduce this later this week, if I can get to it.

cwalkere commented 2 years ago

Well you did one better than me, I'm having troubles building the aws sdk on my personal windows machine and I've run out of time trying to debug that fact. I believe the answer to your question though is answered in the .bat script: https://github.com/aws-samples/amazon-polly-metahumans/blob/main/Source/AmazonPollyMetaHuman/ThirdParty/AwsSdk/BuildAwsSdkWin64.bat

Specifically this part.

You need to copy the 'include' folder into the Source/AmazonPollyMetaHuman/ThirdParty/AwsSdk/Win64 folder, copy the newly built .dll and .pdb files to Source/AmazonPollyMetaHuman/ThirdParty/AwsSdk/Win64/bin folder and the .lib files to Source/AmazonPollyMetaHuman/ThirdParty/AwsSdk/Win64/lib folder. Once you do that, you should be able to open the UE project.

yogeshchandrasekharuni commented 2 years ago

I faced the same issue and fixed it in the bat file by change line 51 to: cmake .. -G "Visual Studio 16 2019" -DBUILD_ONLY=polly -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX="%SDK_INSTALL_DIR%"

It now compiles fine but when I open AmazonPollyMetaHuman.uproject, after being asked to build the asset, I get a pop-up error:

image

Any idea how I can fix this?

cwalkere commented 2 years ago

When you ran the bat file, are you running it from a parent cmd prompt/powershell or are you running it by right clicking/running from windows explorer? I believe if the bat file errors out, it just closes, so it's hard to see if it succeeded or not, unless you run it from a parent shell, that way the error text remains. Can you confirm that you have Source/AmazonPollyMetaHuman/ThirdParty/AwsSdk/Win64 folder and it has a bunch of .pdbs, .dlls, and .lib files inside a bin/ and lib/ folder?

I'll try to prioritize working on this, as it seems many people are now reporting problems.

yogeshchandrasekharuni commented 2 years ago

I can confirm that it does compile without any errors after having made the aforementioned change.

I can also confirm that the .dll, .pdb and .lib files have been generated into the Win64/bin and Win64/lib folders.

Thank you, looking forward to the fix.

cwalkere commented 2 years ago

so I might have figured it out - (with the help of my colleague, shoutout to @dylanhol-amzn) - I'll put out a fix later, but can you try deleting the aws-sdk folder, modifying the .bat script to use version 1.9.0 (add --branch 1.9.0 to the end of the git clone command), rerun the script. The problem is -DCUSTOM_MEMORY_MANAGEMENT=ON is required for it to work, and it seems later versions of the aws sdk changed something. Also, this seems to only work with UE 4.26/4.27. I tried with UE5 and I got an error.

yogeshchandrasekharuni commented 2 years ago

Awesome, #a799751 has fixed this for me. Thank you!

DrinkSlurp commented 2 years ago

Confirmed, it also works for me.

Thanks a lot!!