LoginSignup
16
10

More than 5 years have passed since last update.

Google Speech API + Python で音声をテキスト変換する

Last updated at Posted at 2018-09-05

Python install


# Pythonのバージョン管理ソフトのインストール
$ brew install pyenv
$ echo 'export PATH="$HOME/.pyenv/bin:$PATH"' >> ~/.bashrc
$ echo 'eval "$(pyenv init -)"' >> ~/.bashrc
$ echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bashrc
$ source ~/.bashrc

# インストール可能なバージョンの確認
$ pyenv install -l

# 2系インストール
$ pyenv install 2.7.14

# 3系インストール
$ pyenv install 3.6.3

# デフォルトバージョンの指定(python python2, python3)
$ pyenv global 2.7.13 3.6.1

# Virtualenv install(環境管理用)
$ pip install virtualenv

Google Cloud Speech API 有効化

  1. Google アカウントを準備する
  2. GCP コンソールにログインする
  3. GCP のプロジェクトを作成・選択する
  4. google speech aipを有効化する
    1. メニューボタンの「APIとサービス」 -> 「ダッシュボード」をクリック
    2. ページ上部の「APIとサービスの有効化」をクリック
    3. 検索窓で「speech」と入力し、「Google Cloud Speech API」を選択
    4. 「有効にする」をクリック
  5. 認証キーの取得
    1. メニューボタンの「APIとサービス」 -> 「認証情報」をクリック
    2. 「認証情報を作成」 -> 「サービスアカウントキー」をクリック
    3. サービスアカウントの選択でspeech-apiを選択する
    4. キータイプはjsonを選択する
    5. 作成をクリック

参考サイト

gcloud(SDK)install

$ curl https://sdk.cloud.google.com | bash
$ exec -l $SHELL
$ gcloud init

# ブラウザを利用したログイン
$ gcloud auth login

-TODO-
GCP のサービスアカウントキーを取得し環境変数の設定が必要か検証が必要

# Google Cloud Speech APIの 5.認証キーの取得 でダウンロードしたjsonファイルを指定
$ export GOOGLE_APPLICATION_CREDENTIALS=<path_to_service_account_file>

サービスアカウントキー取得の参考サイト
http://blog.a-know.me/entry/2016/09/18/212947

サービスアカウントキーとは
https://cloud.google.com/speech/docs/common/auth?hl=ja
https://cloud.google.com/iam/docs/creating-managing-service-account-keys?hl=ja
https://cloud.google.com/iam/docs/understanding-service-accounts?hl=ja

Python 非ストリーミングおよびストリーミング音声認識サンプルの実行

参考サイト

# サンプルファイル取得
$ git clone https://github.com/GoogleCloudPlatform/python-docs-samples.git
$ cd python-docs-samples/speech/cloud-client

# 環境構築
$ brew install portaudio
$ pyenv local 2.7.14
$ virtualenv env
$ source env/bin/activate
$ pip install -r requirements.txt
$ pip install pyaudio
# ストリーミングで音声変換
$ python transcribe_streaming_mic.py

注)変換は言語が英語のため、日本語に変換したい場合は178行目あたりのlanguage_code = 'en-US'language_code = 'ja-JP'と変換する必要がある。

16
10
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
16
10