reazonspeech.espnet.asr

このリファレンスでは、ESPnetモデルで音声認識するためのインターフェイスを解説します。

関数

load_model(device=None)

ReazonSpeechのESPnetモデルをロードする。

パラメータ:

str (device) -- cuda もしくは cpu ( None 指定で自動選択)

戻り値の型:

espnet.bin.asr_inference.Speech2Text

transcribe(model, audio, config=None)

ReazonSpeechモデルで音声を認識し、結果を返却する。

サンプルコード

from reazonspeech.espnet.asr import audio_from_path, load_model, transcribe

audio = audio_from_path("test.wav")
model = load_model()
ret = transcribe(model, audio)

print('TEXT:')
print('  -', ret.text)

print('SEGMENTS:')
for segment in ret.segments:
    print('  -', segment)

実行結果

TEXT:
  - ヤンバルクイナとの出会いは18歳の時だった。
SEGMENTS:
  - Segment(start_seconds=0.91, end_seconds=6.08, text='ヤンバルクイナとの出会いは18歳の時だった。')
パラメータ:
戻り値の型:

reazonspeech.espnet.asr.TranscribeResult

補助関数

audio_from_path(path)

音声ファイルを読み込み、音声データを返却する。

パラメータ:

path (str) -- 音声ファイルのパス

戻り値の型:

AudioData

audio_from_numpy(array, samplerate)

Numpyの配列を受け取り、音声データを返却する。

パラメータ:
  • numpy.ndarray (array) -- 音声データ

  • int (samplerate) -- サンプリングレート

戻り値の型:

AudioData

audio_from_tensor(tensor, samplerate)

PyTorchのテンソルを受け取り、音声データを返却する。

パラメータ:
  • torch.tensor (array) -- 音声データ

  • int (samplerate) -- サンプリングレート

戻り値の型:

AudioData

クラス

class TranscribeConfig

音声認識の処理を調整するための設定値クラス

verbose: bool = True

Falseがセットされた場合、プログレスバーを無効化する。

class TranscribeResult

音声認識の結果を格納するためのデータクラス

text: str

音声認識結果の文字列

segments: List[Segment]

タイムスタンプ付きの認識結果

class Segment

音声認識結果のセグメント

start_seconds: float

セグメントの開始時刻

end_seconds: float

セグメントの終了時刻

text: str

音声認識結果の文字列

class AudioData

音声データを格納するためのコンテナ

waveform: numpy.array

音声データ

samplerate: int

サンプリングレート