Barkを使って音声合成(日本語も可能)

github.com

はじめに

以前から「Open JTalk」や「ESPnet」を使って音声合成にチャレンジしてきました。
touch-sp.hatenablog.com
touch-sp.hatenablog.com
今回は「Bark」というものにチャレンジしてみました。

今までチャレンジしてきた音声合成の中で最も簡単でした。

日本語に限って言えば、結果は「ESPnet」の方が良い印象です。

環境

Ubuntu 22.04 on WSL2 
CUDA 11.8
Python 3.10
pip install torch==2.0.1+cu118 torchvision==0.15.2+cu118 torchaudio==2.0.2+cu118 --index-url https://download.pytorch.org/whl/cu118
pip install git+https://github.com/suno-ai/bark.git

Pythonスクリプト

from bark import SAMPLE_RATE, generate_audio, preload_models
from scipy.io.wavfile import write as write_wav

# download and load all models
preload_models()

# generate audio from text
text_prompt = """
首都はキャンベラ。
世界一のサンゴ礁、グレートバリアリーフが有名。
"""

for i in range(10):
    audio_array = generate_audio(text_prompt, history_prompt=f"v2/ja_speaker_{i}")
    # save audio to disk
    write_wav(f"bark_generation_{i}.wav", SAMPLE_RATE, audio_array)

これだけでいっきに10パターンの音声が作成されます。

結果

今回の結果(10パターン)










Open JTalk

ESPnet