Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DenoiseStateクラスの追加 #14

Merged
merged 5 commits into from
Jan 14, 2022
Merged

DenoiseStateクラスの追加 #14

merged 5 commits into from
Jan 14, 2022

Conversation

sile
Copy link
Member

@sile sile commented Jan 14, 2022

Before

  • Rnnoiseクラスのみが存在し、そこでwasmファイルのロードやノイズ抑制処理(processFrameメソッド)の提供等の全てを行っていた
  • 難点:
    • ノイズ抑制処理のON/OFFや設定更新(e.g., カスタムモデルに差し替え)を行うたびに wasm ファイルのロードが必要になってしまって実行コストが高い
    • 実装的にも毎回非同期なload関数を呼ぶ必要があるのは煩雑

After

  • DenoiseState というクラスを追加し、processFrameメソッド等の実際の処理を行うメソッドを、そちらに移動した
  • Rnnoiseクラスはwasmのロードと、RNNoiseのトップレベル関数の提供のみに責務を限定
  • この方がよりオリジナルのAPI (e.g., rnnoise.h)に近い構成となるので、今後対応APIを増やす場合にもスムーズに行える

@sile sile merged commit 8928394 into develop Jan 14, 2022
@sile sile deleted the feature/expose-rnnoise-api branch January 14, 2022 07:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
1 participant