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

音域補正・音量補正用のパラメータ名を整理したい #1899

Closed
Hiroshiba opened this issue Mar 4, 2024 · 5 comments · Fixed by #1902
Closed

音域補正・音量補正用のパラメータ名を整理したい #1899

Hiroshiba opened this issue Mar 4, 2024 · 5 comments · Fixed by #1902

Comments

@Hiroshiba
Copy link
Member

内容

音高補正・音量補正用のドメイン用語をちょっと整理しておきたいです。
というのもそろそろアップデートリリースしようと思ってて、プロジェクトの内部情報としてこの辺の値が書き込まれるので、その前に決めておきたいなと。

日本語のドメイン用語がユーザーに露出するのはもうちょっと後なので、とりあえず英語(パラメーター名)の方を決められれば!

関連issue

@Hiroshiba
Copy link
Member Author

Hiroshiba commented Mar 4, 2024

@sigprogramming (cc @romot-co @y-chan

「voiceKeyShift」だと出力音声のキーシフトと誤解されるかもなので、歌い方のキーシフトだと分かりやすいように「guideKeyShift」に変更したいのですが、どうでしょうか 👀
キーシフトだと大丈夫なのですが、音量スケールだと結構紛らわしいのでリリース前に変えておきたいなと。


今の実装でのパラメーター名と意味はこうなってます。

  • notesKeyShift
    • ユーザー入力されたノートをどれぐらいキーシフトしてからクエリAPIに投げるか
  • voiceKeyShift
    • エンジン出力された歌い方(ガイド)のピッチをどれぐらいキーシフトしてから歌声合成APIに投げるか

ここで音量のことも考えると「歌い方の音量をどれぐらいスケールするか」のパラメータが欲しくなります。
キーシフトの命名に合わせると「voiceVolumeScale」とかになるのですが、これが捉え方によっては歌い方の音量スケールではなく、出力された歌声の音量スケールだと勘違いしちゃいそうだなと。
ということでちょっと変えたいと思った次第です。

データの流れはこうなってます。

入力スコア → (パラメータ調整) → クエリAPI → 歌い方 → (パラメータ調整) → 合成API → 合成音声 → (パラメータ調整) → 出力音声

なんとなくですが、スコアのとこを「notes」(エディタにとってスコアはとても大きな概念)、歌い方を「guide」、出力音声を「output」辺りにすると分かりやすいかもと思いました。
この命名に乗っ取ると↓のようになります。

  • notesKeyShift
    • ユーザー入力されたノートをどれぐらいキーシフトしてからクエリAPIに投げるか
  • guideKeyShift
    • エンジン出力された歌い方(ガイド)のピッチをどれぐらいキーシフトしてから歌声合成APIに投げるか
  • guideVolumeScale
    • エンジン出力された歌い方(ガイド)の音量をどれぐらいスケールしてから歌声合成APIに投げるか
  • outputVolumeScale
    • (まだ存在しないので仮置き)合成した音声の音量をどれぐらい変えるか

@sigprogramming
Copy link
Contributor

@Hiroshiba
なるほどです!
guideKeyShift、良いと思います!(歌い方のピッチのシフトなのでguidePitchShiftも良いかもです)
スコアのところを「notes」、歌い方を「guide」、出力音声を「output」にするのも良さそうに思いました!

@Hiroshiba
Copy link
Member Author

guidePitchShift

なるほどたしかにです!
keyを含めていればkey単位でのシフトだということがわかるかもなのでguidePitchKeyShiftもありかもと思いましたが、まあ単位はコメントで書けば良いかなと思いました!

@Hiroshiba Hiroshiba changed the title 音高補正・音量補正用のパラメータ名を整理したい 音域補正・音量補正用のパラメータ名を整理したい Mar 4, 2024
@Hiroshiba
Copy link
Member Author

変更するプルリクエストを作りました! #1902

色々実装してて分かったのですが、音域補正用のパラメーターを1つ追加する必要があったのでそういう実装になってます。
ちょっとどうすべきか迷ってます。。 🙇

@Hiroshiba
Copy link
Member Author

あと音域補正はノートと出力音声のピッチが合うように2回シフトさせるのですが、
じゃあ音量補正は歌い方と出力音声の音量が合うように2回音量増減するべきなのかがわからない・・・ 😇
2回音量増減するなら、guideVolumeScaleで音量を上げた後、query.volumeScaleで音量を下げて合成する必要がありそう。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
2 participants