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

歌手のみのキャラクターがcharacterInfosの一番後ろに配置されてしまう #2079

Open
sabonerune opened this issue May 14, 2024 · 6 comments
Labels

Comments

@sabonerune
Copy link
Contributor

不具合の内容

ref: #1973 (comment)
現在エンジンからのキャラクター取得は/speakersエンドポイントと/singersエンドポイントから取得した後それをマージしています。
しかし話者・歌手両方を含めた順序をエンジンから取得する方法が存在しないためエンジンが意図する順序にすることができません。

そもそも話者と歌手情報を一つにまとめていること自体に問題があるかもしれません。

再現手順

現状歌手のみのキャラクターが存在しないため再現不可

期待動作

characterInfosに格納されるキャラクターがエンジンの意図したとおりになる。

その他

#2078 と関係あるかも。

@sevenc-nanashi
Copy link
Member

Coreには順序があるので、これをエンジンでも吐くようにするのが一番いいかな~って思います。

@qryxip
Copy link
Member

qryxip commented May 14, 2024

ENGINEが吐く、というよりCOREのresourceに入れてからENGINEで対応というのはどうでしょうか? 現CORE v0.15はmetas.jsonの中身に一切関与しないので、metas.jsonを差し替えるだけでよいはず。この問題の優先度次第ではありますが。

CC: @tarepan

@tarepan
Copy link

tarepan commented May 14, 2024

エディタは SpeakerInfoorder 的な属性を持たせて返してほしい、だと理解しました。

「metas.jsonを差し替える」は「CORE の metas API が order 持ちの json を返すようにする」で理解合っているでしょうか?
エンジン実装上の問題はとくになさそうです。API 変更ではあるので、色々丁寧に進行する必要はあると思います。

@qryxip
Copy link
Member

qryxip commented May 15, 2024

エディタは SpeakerInfoorder 的な属性を持たせて返してほしい、だと理解しました。

そうです。order: int | None = Noneのようになるはずです (VOICEVOX/voicevox_core#728 でのPython APIでは実際にそうしています)。

「metas.jsonを差し替える」は「CORE の metas API が order 持ちの json を返すようにする」で理解合っているでしょうか?

ENGINEから見たらそうなります。

API 変更ではあるので、色々丁寧に進行する必要はあると思います。

"metas"の仕様として VOICEVOX/voicevox_core#728 内で議論しているので、それを延長する形になるかと思います。

@qryxip
Copy link
Member

qryxip commented May 16, 2024

現CORE v0.15はmetas.jsonの中身に一切関与しないので、metas.jsonを差し替えるだけでよいはず。

よく考えたらCOREのビルドは必要ですね。現状のリリース体制だとCOREとモデルは不可分なので新しいバージョンを出す必要があり、前のバージョンのバイナリを使い回そうにもC APIにはvoicevox_get_versionが…

まあ次のキャラクター追加/更新のとき(CORE v0.16よりかは早いはず)に設定するのがいいのかも?

@Hiroshiba
Copy link
Member

全然関係ないんですが、ソングがあるキャラクターを優先的に上に表示すればいいのではと思いましたが、結局ソングのみのキャラクターの後にソング+トークのあるキャラクターが実装されたら順番が変わっちゃいますね。。

speaker.orderを使うのが丸いなと思いました!!

実装早めるかどうかですが、まあちょっと VVM のタイミングで全部一気にやっちゃいたいというのと(優先度が高いのがたくさんある)、あと問題が出てくるのが「ソングのみのキャラクターがリリースされた後にトークキャラクターをリリースしたとき」で、まあそういうことがあるにしても相当先になるんじゃないんかなと思いました!
ということでCORE v0.16の後にエンジンに実装→エディタに実装が丸いのではないかなと・・・・・・・・!!!

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

No branches or pull requests

5 participants