We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
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
休符(ノートが何もない場所)でフレーズを区切り、そのフレーズの前後1秒ほどをpauとしてエンジンAPIを実行しています。
voicevox/src/store/singing.ts
Line 1059 in 05926fb
この無音区間でブレス音が結構聞こえてくるキャラクターもいます。 波音リツのソングなどが分かりやすいと思います。声量を10とかにするとテストしやすいかもです。 ↓の例は範囲選択しているところが呼吸音になっています。
歌の開始や終了であれば問題ないのですが、休符のたびに前後1秒pauが追加されるため、呼吸音と歌が重なってしまう場合があります。 この重なりがなくなるか低減できればこのissueは解決だと思います。
歌がよりクリアになる
前後1秒のpau追加をもっと短くすることでも解決できますが、歌の感じが変わってしまうかもしれません。 別アプローチが良いと思っています。
VOICEVOXの歌唱 API は入力ボリュームを制御することができます。 これを0にすれば理論上は呼吸音ですら出なくなるはずです。
方法は2つあって、1つ目がframeAudioQueryを取得してVuex.stateに登録する前に、pauの箇所のvolumeを0にする方法です。 pauを全部0にしてしまうと子音の出だしが変になってしまうかもなので、0.1秒くらいかけてだんだん0になっていく感じでも良いかもです。(実験してみて次第かなと) このあたり↓に関数を足すのが妥当だと思います。
frameAudioQuery
Lines 1077 to 1084 in 05926fb
1つ目の方法はブレス音を完全に消してしまうので、それがもったいない感じであれば、他のフレーズと被っているpauの部分のvolumeを0にする方法もあると思います。 ただこれは前後1秒のフレーズを書き換えたときに再レンダリングしないといけなかったりとなかなか大変なので、とりあえず1の方法が無難かもしれません。
ちなみにもっと他の方法として、短い休符だった場合は別フレーズとして分けず、1つのフレーズとして扱うとかも有りだと思います。 音声合成結果はこれが一番自然になるはずですが、これは下手したらAメロ全部くっついてしまうので、また聞けるようになるまでかなりの時間待たないといけず、UXがガクッと下がると思います。 これは将来エンジンやコアが成長して、途中からレンダリングを開始できるようになったら実現できるかもです。だいぶ先になりそうかなと!
次のハミングキャラ追加リリースで結構顕著に影響が出るキャラクターがいたので優先度を上げています。 もしよければ・・・!
The text was updated successfully, but these errors were encountered:
こちら取り組みます!
Sorry, something went wrong.
sigprogramming
Successfully merging a pull request may close this issue.
内容
休符(ノートが何もない場所)でフレーズを区切り、そのフレーズの前後1秒ほどをpauとしてエンジンAPIを実行しています。
voicevox/src/store/singing.ts
Line 1059 in 05926fb
この無音区間でブレス音が結構聞こえてくるキャラクターもいます。
波音リツのソングなどが分かりやすいと思います。声量を10とかにするとテストしやすいかもです。
↓の例は範囲選択しているところが呼吸音になっています。
歌の開始や終了であれば問題ないのですが、休符のたびに前後1秒pauが追加されるため、呼吸音と歌が重なってしまう場合があります。
この重なりがなくなるか低減できればこのissueは解決だと思います。
Pros 良くなる点
歌がよりクリアになる
実現方法
前後1秒のpau追加をもっと短くすることでも解決できますが、歌の感じが変わってしまうかもしれません。
別アプローチが良いと思っています。
VOICEVOXの歌唱 API は入力ボリュームを制御することができます。
これを0にすれば理論上は呼吸音ですら出なくなるはずです。
方法は2つあって、1つ目が
frameAudioQuery
を取得してVuex.stateに登録する前に、pauの箇所のvolumeを0にする方法です。pauを全部0にしてしまうと子音の出だしが変になってしまうかもなので、0.1秒くらいかけてだんだん0になっていく感じでも良いかもです。(実験してみて次第かなと)
このあたり↓に関数を足すのが妥当だと思います。
voicevox/src/store/singing.ts
Lines 1077 to 1084 in 05926fb
1つ目の方法はブレス音を完全に消してしまうので、それがもったいない感じであれば、他のフレーズと被っているpauの部分のvolumeを0にする方法もあると思います。
ただこれは前後1秒のフレーズを書き換えたときに再レンダリングしないといけなかったりとなかなか大変なので、とりあえず1の方法が無難かもしれません。
ちなみにもっと他の方法として、短い休符だった場合は別フレーズとして分けず、1つのフレーズとして扱うとかも有りだと思います。
音声合成結果はこれが一番自然になるはずですが、これは下手したらAメロ全部くっついてしまうので、また聞けるようになるまでかなりの時間待たないといけず、UXがガクッと下がると思います。
これは将来エンジンやコアが成長して、途中からレンダリングを開始できるようになったら実現できるかもです。だいぶ先になりそうかなと!
その他
次のハミングキャラ追加リリースで結構顕著に影響が出るキャラクターがいたので優先度を上げています。
もしよければ・・・!
The text was updated successfully, but these errors were encountered: