Error during Windows Installation
Closed this issue ยท 13 comments
Hi, when I'm trying to install with powershell with command "pip install tts==0.21.3 pydub nltk beautifulsoup4 ebooklib tqdm" it can't install the package correctly.
I've pasted in this link the last part of the response. It says something about last vesion of Microsoft Visual C++, but i've installed the last version.
Anyone knows how to solve it? Thanks
Found others with your issue
- I think it's an issue with the tts pip install,
Found people on the coqui tts github with the same issue: not sure if they have a fix but yeah hope that helps point you in the right direction.
I would use the docker install tho, it's easier.
-
As everything is already preconfigured in the docker image.
๐ Running the Docker Container
To run the Docker container and start the Gradio interface, use the following command:
-Run with CPU only
docker run -it --rm -p 7860:7860 athomasson2/ebook2audiobookxtts:latest
-Run with GPU Speedup (Nvida graphics cards only)
docker run -it --rm --gpus all -p 7860:7860 athomasson2/ebook2audiobookxtts:latest
This command will start the Gradio interface on port 7860.(localhost:7860)
Finally used docker method, thanks for the fast reply!
No probs! Glad to hear it worked! ๐
One question. I can't see the GUI with localhost:7860, but i can with public url. I need to do something to enable GUI with localhost url?
Another question. Can I stop the conversion and follow it another day? It needs a lot of time.
Thanks for your work, is awesome!
oh, yeah, I Never figured out how to make the local host work for docker images, But the public url worked so I just left it at that.
For pausing......... I don't have an implementation in it for pausing butttt you might be able to pause the docker image itself and resume it,
To pause and resume the Ebook2AudiobookXtts Docker image. Use these commands:
-
Heads up if you do this I'm not sure if the public links will work after unpausing this or not.
-
I have no idea if this'll work, but it's worth a try?
Info about pausing and unpausing Docker image
Summary of Commands for Running and Pausing the Docker Image
Launching the Docker Image (You have to use these modified launch command instead if you want to pause or unpause it.)
Without GPU Support
docker run -it -p 7860:7860 athomasson2/ebook2audiobookxtts:latest
With GPU Support
docker run --gpus all -it -p 7860:7860 athomasson2/ebook2audiobookxtts:latest
Explanation:
- Removed
--rm
Flag: By omitting the--rm
flag, the container won't be automatically removed when stopped or paused. This allows you to pause and unpause the container without losing its state or output. - GPU Support: The
--gpus all
flag enables GPU acceleration if you have NVIDIA GPUs and the necessary drivers (nvidia-docker2
or Docker's native GPU support) installed.
Pausing and Unpausing the Docker Container
On Linux and macOS
-
Pause Command:
docker ps -q --filter "ancestor=athomasson2/ebook2audiobookxtts:latest" | xargs docker pause
-
Unpause Command:
docker ps -q --filter "ancestor=athomasson2/ebook2audiobookxtts:latest" | xargs docker unpause
On Windows (PowerShell)
-
Pause Command:
docker pause $(docker ps -q --filter "ancestor=athomasson2/ebook2audiobookxtts:latest")
-
Unpause Command:
docker unpause $(docker ps -q --filter "ancestor=athomasson2/ebook2audiobookxtts:latest")
Explanation:
- These commands locate the running container based on the image name
athomasson2/ebook2audiobookxtts:latest
and apply the pause or unpause action. - For Linux and macOS:
- Uses
xargs
to pass the container ID todocker pause
ordocker unpause
.
- Uses
- For Windows PowerShell:
- Uses
$()
to execute the inner command and pass its output todocker pause
ordocker unpause
.
- Uses
Additional Notes:
- Monitoring the Terminal Output: Since we're using the
-it
flags (-i
for interactive,-t
for a pseudo-TTY), you'll continue to see the terminal output of the Docker container, which is useful for monitoring its activity. - Preserving Container State: Pausing the container preserves its current state and data in memory. When you unpause it, the container resumes execution exactly where it left off.
Thanks for the info!
Do you know why each time i stop the container, docker removes the container and I need to pull another time?
Hm, it shouldn't if your making sure to exclude the command --rm
from the command you initially use to start the docker image when your using the docker run
command?
Is it doing that with that command omitted?
It works removing --rm. Incredible tool. Thanks!
Once again no problem! It's really nice seeing people using my side projects! ๐
- Hit me up if there's any other issues!
Do you know if using a target voice file needs a lot of more time for the conversion? The target voice file size influence in this time?
I'm using now a target voice file and is needing a lot more time than without it for the same book. The file size is 60 sec mp3.
That shouldn't effect the speed
Because --->
-
Adding a target Voice shouldn't affect the speed of it as long as it's not like a giant file.
-
Your 60 second mp3 file shouldn't really affect the speed because the text to speech (XTTS), it doesn't actually work without a target Voice lol
-
What you don't see, is that in the backend I have a pre-set default target voice, which (XTTS) will use if no target voice is set by the user.
Also Info on people talking about voice cloning output quality WITH XTTS. -->
Will Extremely Long Audio Improve Coqui_TTS-Based Voices?-reddit
Oh BTW I just activated discussions on this GitHub repo!
- So if you have any other questions or suggestions and such that aren't related at an issue then we can go there.
:)