概要
- ローカル PC(OS: Windows11) の WSL Ubuntu 24.0.1 上に ESPNet をインストールする。
- Python による PIP でのインストールをする。
ESPNet とは
- 公式サイト:https://espnet.github.io/espnet/
- End-to-End の音声認識、テキスト音声合成、音声翻訳、音声協調、話者大洗いゼーション、音声言語理解などのツールキットである。
導入方法
Python 3.12 以下でないと動作しないことに注意する。
-
ビルド用のライブラリをインストール
sudo apt update sudo apt install -y git build-essential sox ffmpeg flac -
Python インストール
sudo apt install -y \ pkg-config wget \ libssl-dev zlib1g-dev libbz2-dev \ libreadline-dev libsqlite3-dev \ libffi-dev liblzma-dev \ libncurses-dev libgdbm-dev \ libgdbm-compat-dev uuid-dev \ tk-dev cd /tmp wget https://www.python.org/ftp/python/3.12.16/Python-3.12.16.tgz tar -xzf Python-3.12.16.tgz cd Python-3.12.16 ./configure \ --prefix=/opt/python-3.12.16 \ --enable-optimizations make -j"$(nproc)" sudo make altinstall /opt/python-3.12.16/bin/python3.12 -m ensurepip --upgrade -
GitHub からソースコードを取得
cd git clone https://github.com/espnet/espnet.git cd espnet -
Python 仮想環境を作成、有効化
/opt/python-3.12.16/bin/python3.12 -m venv .venv source .venv/bin/activate python -m pip install --upgrade pip setuptools wheel -
ESPnet を TTS 学習対応でインストール
python -m pip install -e ".[tts,train]"もしpyopenjtalkがインストールできていなければ、次のコマンドでpyopenjtalkをインストールする。
python -m pip install pyopenjtalk==0.4.1
動作確認
音声合成のサンプルコード
sample.py
import soundfile as sf
from espnet2.bin.tts_inference import Text2Speech
text2speech = Text2Speech.from_pretrained(
model_tag="espnet/kan-bayashi_jsut_vits_prosody",
device="cpu",
)
text = "あいうえおかきくけこ"
result = text2speech(text)
wav = result["wav"].view(-1).cpu().numpy()
sf.write("output.wav", wav, text2speech.fs)
実行コマンド
次のコマンドで、output.wav が出力される。
python sample.py