音声生成「にじボイス」使い方とAPI活用まで一通り解説
AIVtuberシロハナちゃんの開発プロデュースをしているyukiです。
この記事では、音声生成サービス「にじボイス」について使い方を紹介するのと、API活用など一通りまとめている内容となっています。
「にじボイス」は感情豊かで質の高い音声生成ができるサービスで、誰でも簡単に多くの音声モデルを使用することができます。
また、環境構築などは不要でPCスペックなどに依存せずに使用できるのでとても便利です。
この記事の内容は動画でも解説しているので、必要に応じて視聴いただけると幸いです(実際のボイスや操作感など)。
※この記事は2024/12/14時点のものなので今後変更があるかもしれないですのでご了承ください
にじボイス概要
にじボイスはWebサービス、APIとして使用できる商用利用可能で高品質な音声生成サービスです。
また、ボイスは現時点で100種類と声のバリエーションも非常に富んでおり、デジタルコンテンツやナレーション、AIVtuberなど様々な活用が見込まれます。
Web上で使用できるため環境構築やPCスペックに依存せずに高品質な音声生成を簡単に使用できることが非常に強いポイントです。
ただ、本格的に使うには有料でのプランに加入、または課金が必要なのと使用にはクレジット表記が必須となっています。
クレジット表記例:「にじボイス」「Voiced by NIJI Voice」など。
料金プランについてはWebサービス、APIともに後半に記載があります。
Webサービス「にじボイス」で音声生成
使い方は非常に簡単で上記リンクからサイトにアクセスしてログインします。
ログインするとボイスを探す画面に遷移するので、そこから生成させたいボイスキャラクターを選択します。
ちなみに現時点でも100種類あるので、「声を聞いてみる」ボタンのサンプルボイスを活用してみてください。
キャラ選択をすると右側に生成したい文章を入力するフォームと生成&再生ボタンが表示されます。
ここで、話させたい文章を入力→スピード調整→生成&再生ボタンで選択したキャラのボイスで音声が生成されます。
上記は実際に生成した音声のmp3ファイルです。
ダウンロードボタンから生成した音声のmp3ファイルを入手できます。
このような使い方で、入力した文章をもとに音声生成してダウンロードできるので、動画音声やループアナウンスなどに活用できるかと思います。
ちなみに音声生成時にはクレジットが1文字につき1クレジット消費されていきます。
フリープラン(無課金)だと1ヵ月に1000クレジット使用できます(詳細は後述)
にじボイスAPIを使ってみる
上記リンクからにじボイスAPIのページにアクセスできます。
こちらではAPIキーの取得やドキュメントの参照、ボイスIDの取得などが可能となっています。
APIキーとボイスIDの取得
APIをしようするにあたって、まずはAPIキーを取得しましょう。
この画面の👀ボタンを押下するとAPIキーを取得できます。
※流出しないように注意してください。
なお、ボイスIDはボイス一覧に遷移して、それぞれのキャラクターごとにIDがあるので、それをコピーしておきましょう。
サンプルコード
下記のサンプルコード(Python)では、にじボイスAPIを使用してターミナルでテキストを入力して実行すると、にじボイスで生成された音声ファイルが保存されるというシンプルな内容となっています。
NIJI_VOICEAPI_KEYとvoice_actor_idに先ほど取得したAPIキーとボイスIDを入れてください。
# .env
NIJI_VOICEAPI_KEY = "取得したAPIキーを入力"
import os
import requests
def generate_voice(text):
# 環境変数からAPIキーを取得
api_key = os.getenv("NIJI_VOICEAPI_KEY")
if not api_key:
print("エラー: APIキーが設定されていません。")
return
# 取得したボイスIDを設定
voice_actor_id = ""
url = f"https://api.nijivoice.com/api/platform/v1/voice-actors/{voice_actor_id}/generate-voice"
headers = {"x-api-key": api_key, "Content-Type": "application/json"}
data = {"script": text, "speed": "0.8", "format": "wav"}
try:
response = requests.post(url, headers=headers, json=data)
response.raise_for_status()
audio_url = response.json()["generatedVoice"]["audioFileUrl"]
audio_response = requests.get(audio_url)
audio_response.raise_for_status()
existing_files = len(
[f for f in os.listdir() if f.startswith("voice_") and f.endswith(".wav")]
)
filename = f"voice_{existing_files+1:02d}.wav"
# 音声ファイルを保存
with open(filename, "wb") as f:
f.write(audio_response.content)
print(f"音声ファイルを保存しました: {filename}")
except requests.exceptions.RequestException as e:
print(f"エラーが発生しました: {e}")
def main():
while True:
text = input("テキストを入力してください: ")
if text.lower() == "q":
break
generate_voice(text)
if __name__ == "__main__":
main()
公式のAPI仕様ドキュメントは下記リンクからご覧ください。
料金プラン
にじボイスの料金プランを載せておきます。
更新あるかもしれないので最新の情報は公式サイトを確認ください。
Webサービス
音声生成した分だけ1文字1クレジット消費される形式です。
つまり月額でどれだけ音声生成するかでプランを選択するのが良いかと思います。
一応、フリープラン(無料)でも月に1000クレジット分(つまり1000文字)は音声生成できるようですね。
にじボイスAPI
APIの料金プランとしてはプリペイド式となっており、1万文字あたり825円のチャージが必要なイメージです。
初回は特典として5000文字が無料で使えます。
APIで音声生成するとこのクレジットが減っていき、利用量・支払いページで状況を確認できます。
まとめと活用例
この記事では、にじボイスについて、Webサービスの使い方やAPI活用まで一通り紹介してきました。
本格的に使うとなったら有料にはなりますが、Web上で手軽に使えるのと環境に依存しないのでメリットの方が大きいのかなと個人的に思います。
また、ボイスの品質も非常に高いのとバリエーションも豊富なので最適な音声生成が可能になるのではないでしょうか。
活用としては動画等のナレーションなどがあると思いますが、AIVtuberやAIキャラクターボイスとしての活用もアリです。
実際にAIVtuberのゲストとして、にじボイスのAPIを活用した企画を立てて配信してみました。参考までに共有です。
また、本記事の内容は動画の方でも実際のデモを交えて解説しているので、ぜひ視聴してみてください。
そして、にじボイスも本記事や解説動画をもとに実際に体験してみてください。
以上!それではまた👋