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

読点などの無音時間についてデフォルト値を設定できるようにする #2083

Open
X-20A opened this issue May 15, 2024 · 6 comments

Comments

@X-20A
Copy link

X-20A commented May 15, 2024

内容

話速、音高、抑揚等を設定する欄で「 「」 」や「、」等の無音文字の読み上げ時間のデフォルト値が設定できると良いなあと思います。(絶対値がいいかな?)
一つ々々設定するのは面倒だと思うので
HowTo動画でも触れられてたりするので需要はあるんじゃないかなと思います https://www.youtube.com/watch?v=W_ORlMmRJlE 5:10あたり

Pros 良くなる点

編集効率が上がる

Cons 悪くなる点

開始無音や終了無音と混同が起きないよう配慮があるといいかもしれません。
触れば直ぐ分かりそうではありますが

実現方法

要はAPIのaudio_queryのレスポンスのaccent_phrases.pause_moraについてnullでない場合にvowel_lengthにマニュアル値より先に代入すればいいのかなと思いますが私は全体の処理の流れや設計思想についてまだ把握できていません

@Hiroshiba
Copy link
Member

Hiroshiba commented May 15, 2024

issue作成ありがとうございます!
こちらにあるissueと同じ内容かもしれません。

要はAPIのaudio_queryのレスポンスのaccent_phrases.pause_moraについてnullでない場合にvowel_lengthにマニュアル値より先に代入すればいいのかなと思いますが

実装方針についてはその通りだと思います!!!
あとはArray<AccentPhrase>を受け取ってpause_moraに初期値を代入する関数を作り、いたるところでその関数を呼びまくる形が良いのかと思いました!

@X-20A
ものすごい待望の機能なのですが、まだコミッターがいません。
設計的にどこにどうするかなどが若干難しいかもしれないのですが、そのあたりは聞いていただければすぐにお答えいたしますので、もしよかったら開発に挑戦してみませんか・・・!!

(環境構築で戸惑ったとかでもなんでも聞いていただければ 🙏 )

@X-20A
Copy link
Author

X-20A commented May 16, 2024

返信ありがとうございます
手を着け始めてビルドは出来ていますがTypeScriptもVueも読むのがやっと程度なので出来たとしても時間は結構かかると思います
mindmeisterにメモを書いています
よかったら覗いてみて下さい(一度閲覧してもらうと編集権限を付与できると思います
それともここで議論したほうがいいでしょうか?

@sevenc-nanashi
Copy link
Member

Sorry, we couldn’t find what you were looking for. It may have been moved or removed.

って怒られますね>minemeister

@X-20A
Copy link
Author

X-20A commented May 17, 2024

これでどうでしょうか?
https://www.mindmeister.com/3285370399/voicevox-preset

@X-20A
Copy link
Author

X-20A commented May 19, 2024

新しいpresetのパラメータをpauseLength(仮称)とします
エディタが起動したときに右欄に表示されるpresetの初期値はエンジンのAPI:audio_queryから取得しているようです
{
"accent_phrases": [
{}
],
"speedScale": 0,
"pitchScale": 0,
"intonationScale": 0,
"volumeScale": 0,
"prePhonemeLength": 0,
"postPhonemeLength": 0,
"outputSamplingRate": 0,
"outputStereo": true,
"kana": "string"
}
これにpauseLengthが無ければデフォルト値が設定されません
つまり、エディタの方だけでは完結しないということです
pythonは全く経験が無いのでエンジン側の調整を分担して頂ける方がいると有難いのですが...

@Hiroshiba
Copy link
Member

@X-20A 詳細検討ありがとうございます!!!

おっしゃるとおり、エンジン側にパラメータが必要だと感じました。
エディタだけでも完結できるとは思いますが、エンジン側で実装してエディタが乗っかる形が妥当そうだなと。

お手数ですがエンジン側にissueの作成をお願いしてもよろしいでしょうか 🙇
https://github.com/VOICEVOX/voicevox_engine/issues
↓の観点もあるとより良さそう!(issue作っていただいたあとで僕がコメントするのでも大丈夫です)

  • 仕様
    • 他のspeedScaleとかと同様に、合成時にpauの長さを指定されたものに変えると良さそう
  • エンジン側に実装があると良い理由
    • 他のエンジンユーザーも使える!
  • pauの長さを変えない方法
    • pauseLength(仮称)をオプショナルにし、null(PythonだとNone)ならpauの長さを変えないようにするとか?

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

No branches or pull requests

3 participants