リアルタイム字幕レコーダー
この文書は AI によって翻訳されています。内容に不正確な点や改善すべき点がございましたら、文書下部のコメント欄または以下の Issue ページにてご報告ください。
https://github.com/Seeed-Studio/wiki-documents/issues
Nvidia Jetsonでの音声字幕生成
はじめに
現在、私たちは毎日多くの会議を行っていますが、その中には公開を意図しない会議内容も含まれています。会議内容をクラウドに送信して記録し、字幕を返すことは、会議のプライバシーに重大な脅威をもたらす可能性があります。また、最も重要なことは、インターネットが遅延すると会議内容を失う可能性があるという点です。

ここでは、Jetsonでの音声字幕生成を紹介します。このソリューションは、インターネット上での情報漏洩を回避しながら、リアルタイムの音声から字幕への変換サービスを提供します。AIモデルを使用して会議内容を字幕形式で画面に表示することで、会議のプライバシーを保護し、会議記録の作業負担を軽減します。
ハードウェアセットアップ
- reComputer(または他のJetsonベースのデバイス)
- reSpeaker(または他のUSBインターフェースマイク)
- ハードウェア接続
実行環境の準備
ステップ1. Riva ASRサーバーをインストールする:
Riva ASRサーバーのインストールについては、このWikiを参照してください。
ターミナル(Ctrl+Alt+T)でsudo docker ps
を入力すると、以下のような表示がされます。これで最初のステップが完了したことを意味します。
ステップ2. Flaskをインストールする:
ターミナル(Ctrl+Alt+T
)を開き、以下のコマンドを使用してFlaskをインストールします:
pip3 install flask
python3 -c 'import flask; print(flask.__version__)'
以下のような表示がされれば、このステップが完了したことを意味します。
ステップ3. pip、setuptools、wheelをアップグレードする:
# riva client
git clone --depth=1 --recursive https://github.com/nvidia-riva/python-clients
cd python-clients
sudo pip3 install --upgrade pip setuptools wheel
pip3 install --no-cache-dir --verbose -r requirements.txt
python3 setup.py --verbose bdist_wheel
pip3 install --no-cache-dir --verbose dist/nvidia_riva_client*.whl
python3 -c 'import riva.client; print(riva.client.__version__)'
ターミナル(Ctrl+Alt+T)でpip --version
を入力すると、以下のような表示がされます。これでpipのアップグレードが完了したことを意味します。
ターミナル(Ctrl+Alt+T)でpython3 -c 'import setuptools; print(setuptools.__version__)
を入力すると、以下のような表示がされます。これでsetuptoolsのアップグレードが完了したことを意味します。
ターミナル(Ctrl+Alt+T)でwheel version
を入力すると、以下のような表示がされます。これでwheelのアップグレードが完了したことを意味します。
ステップ4. pyaudioをインストールする:
# pyaudio
sudo apt-get install -y --no-install-recommends python3-pyaudio
python3 -c 'import pyaudio; print(pyaudio.__version__)'
ターミナルに以下のような表示がされれば、最後のステップが完了したことを意味します。おめでとうございます!
実行してみましょう
git clone https://github.com/Seeed-Projects/Real-time-Subtitle-Recorder-on-Jetson.git
cd Real-time-Subtitle-Recorder-on-Jetson
python3 recorder.py
プロジェクトの概要
このプロジェクトでは、Riva ASR Serverを使用して、マイク入力からリアルタイムでデータを取得し、それをウェブページに表示します。将来的には、言語を別の言語に翻訳する機能や、より高速な応答速度など、さらに多くのアプリケーションを追加する予定です。