Morshu text-to-speech
Project description
MorshuTalk
A Morshu text-to-speech program.
This program works by converting the given text into phonemes with g2p_en, then concatenates the segments of Morshu's audio where he speaks those phonemes.
Requirements
Python 3.7+ (tested on Windows, should also work on Linux and macOS)
Python is not required if you're just using the MorshuTalk executable.
Installation
Windows Executable
If you're on Windows and you don't want to install Python, you can download an executable from the latest release on GitHub. Simply download the 7z or ZIP archive (they're both identical) and extract it.
Python Package
If you have Python installed, you can install this with pip
:
pip install morshutalk
Or you can clone this repo and run the setup script:
python setup.py install
This installs all the packages necessary for running MorshuTalk from the command-line. If you want to use the GUI, you will also need to install PySide6. (It's not included by default because it's a slightly larger download.)
pip install PySide6
Running
Windows Executable
Just run MorshuTalk.exe
to start the GUI.
Python Package
Installing the package will add the commands morshutalk
and morshutalkgui
to your command-line. If those commands
don't work, you can run the modules with python -m morshutalk
or python -m morshutalkgui
.
Command-Line
Run morshutalk
to load the interactive command-line app. Simply type whatever lines you want Morshu to speak, then he
will talk. To exit, leave the line blank and hit enter.
GUI
Run morshutalkgui
to load the GUI app. Remember that PySide6 is required.
Type text into the textbox, then click Load to load the audio. Click Play to hear the audio. The Morshu sprite will animate as he speaks. You can toggle the sprite visibility from the View menu.
Building
- Clone this repo.
- Create a virtual environment and activate it.
- Install the required packages with
pip install -r requirements.txt
- If you make changes to
mainwindow.ui
, updateui_mainwindow.py
with:
pyside6-uic morshutalkgui\ui\mainwindow.ui -o morshutalkgui\ui_mainwindow.py --from-imports
- If you make changes to
res.qrc
, updateres_rc.py
with:
pyside6-rcc morshutalkgui\res\res.qrc -o morshutalkgui\res_rc.py
- Use
build
to create a distributable package:- Install it with
pip install build
- Run
python -m build
. A tar.gz and wheel package should be located in thedist
folder.
- Install it with
- Use cx_freeze to build an executable for Windows:
- Install it with
pip install cx_freeze
- Run
python setup.py build
. The executable and many other files should be located in thebuild
folder. - Run
python clean_cx_freeze_build.py
to remove unnecessary files. (cx_freeze does a bad job at choosing what packages are necessary. This script removes 150+ MB of unused files.)
- Install it with
License
This uses the following libraries:
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file MorshuTalk-0.0.1.tar.gz
.
File metadata
- Download URL: MorshuTalk-0.0.1.tar.gz
- Upload date:
- Size: 1.3 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 70904f6eda305043f918dbea61cf1f5b541d378f640be3f7b5d89315504c67e9 |
|
MD5 | a19213968331daadef8c243df55ad70b |
|
BLAKE2b-256 | 67aa945f5c12be7e2bba479e3e6b84fa948cc12226f4a3b98d54afa53266a446 |
File details
Details for the file MorshuTalk-0.0.1-py3-none-any.whl
.
File metadata
- Download URL: MorshuTalk-0.0.1-py3-none-any.whl
- Upload date:
- Size: 1.3 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3b6c6c5a7fbe7b2dab134154a5450f68b5945b6942d34dc9ad90568341543819 |
|
MD5 | 0209cd82092256315126ce42878da327 |
|
BLAKE2b-256 | c74f8b7b3c6c3b7995e905970261737d10704b35b95950860c7a7c36c5f282ed |