前回の記事では、
URLからショート動画の台本を自動生成する方法を紹介しました。
今回はその続きとして、
👉 「テキストを音声に変換する」
部分を作っていきます。
動画にする上で意外と面倒なのが👇
- ナレーションを録音する
- 音声を編集する
この部分ですが、AIを使うことで👇
👉 自動で音声を作ることができます
■ この記事でできること
この記事を読むと👇
・テキストを入力する
・ボタンを押す
・ナレーション音声が生成される
ところまで作れるようになります。
■ 使用する技術
- Python
- Google Text-to-Speech(音声生成)
- Streamlit(UI)
■ 事前準備
■ ライブラリインストール
pip install google-cloud-texttospeech
■ Google Cloudの設定
👉 ここが少しだけハードルあります
- Google Cloudでプロジェクト作成
- Text-to-Speech APIを有効化
- サービスアカウントキー(JSON)を作成
👉 詳しい手順は別記事で解説します
■ 認証設定
コード内で指定👇
import os
os.environ["GOOGLE_APPLICATION_CREDENTIALS"] = "google_creds.json"
■ 実装コード(コピペOK)
👉 まずはこれをそのまま動かしてください
import streamlit as st
from google.cloud import texttospeech
import os# 認証ファイル
os.environ["GOOGLE_APPLICATION_CREDENTIALS"] = "google_creds.json"st.title("音声生成テスト")text = st.text_area("読み上げテキストを入力")if st.button("音声を生成"):
if not text:
st.warning("テキストを入力してください")
else:
try:
client = texttospeech.TextToSpeechClient() input_text = texttospeech.SynthesisInput(text=text) voice = texttospeech.VoiceSelectionParams(
language_code="ja-JP",
name="ja-JP-Neural2-B"
) audio_config = texttospeech.AudioConfig(
audio_encoding=texttospeech.AudioEncoding.MP3
) response = client.synthesize_speech(
input=input_text,
voice=voice,
audio_config=audio_config
) with open("output.mp3", "wb") as out:
out.write(response.audio_content) st.success("音声生成完了")
st.audio("output.mp3") except Exception as e:
st.error(f"エラー: {e}")
■ 使い方
1. アプリを起動
2. テキストを入力
3. ボタンを押す
4. 音声が再生される
■ 何をしているのか(最低限)
■ 音声生成
client = texttospeech.TextToSpeechClient()
👉 Googleの音声APIを使う準備
response = client.synthesize_speech(...)
👉 テキストを音声に変換
■ 実際に使ってみた感想
👉 正直なところ👇
■ Google Text-to-Speech
・安定している
・設定がシンプル
・少し機械っぽい
■ VOICEVOX(参考)
・かなり自然
・ただしPC負荷が高い
・固まることがある
👉 結論
・まず試すなら Google
・こだわるなら VOICEVOX
■ つまずいたポイント
■ ① 認証エラー
👉 JSONファイルがない / パス違い
■ ② API有効化していない
👉 Google Cloud側でONにする必要あり
■ ③ 音が出ない
👉 ファイル生成されていない
■ ここまででできること
👉 今の状態👇
台本(前回)
+
音声(今回)
👉 動画の材料が揃いました
■ 次の記事
👉 次はこれ
③ 音声+画像で動画を作る方法(moviepy)


コメント