初めに
リアルタイム話者ダイアライゼーションのためのPythonフレームワークです。「誰がいつ話したか」を音声ストリームからリアルタイムで識別します。
開発環境
環境構築
システム依存関係をインストールします
brew install portaudio libsndfile ffmpeg
プロジェクトの公式推奨しているため,Python 3.10 仮想環境の作成をします
uv venv --python 3.10 source .venv/bin/activate
次にdiartのインストールします
uv pip install -e . uv pip install -e ".[tests]"
3までのライブラリをインストールしただけだと依存関係のエラーになったため,以下の対応を入れました
uv pip install "pyannote.audio<3.1" uv pip install "torchaudio>=2.0.2,<2.1" uv pip install "torchvision==0.15.2" uv pip install "pytorch-lightning>=2.0,<2.1" uv pip install "huggingface_hub<1.0"
また以下の二つは事前に申請をしておきます
実行
マイクからリアルタイムで実行する場合は,以下のコマンドを実行します
diart.stream microphone
今回は複数話者の話者分離として複数人が話している動画を使って実行しました。
diart.stream 音声ファイルのパス
以下のようなGUIで可視化されます
