Skip to content

ストリーミング非対応VVMでストリーミング関数を呼び出すとパニックが発生する #1206

@Hiroshiba

Description

@Hiroshiba

不具合の内容

ストリーミングに対応していないVVMのスタイルでストリーミング関数(generate_full_intermediateまたはrender_audio_segment)を呼び出すと、アサーション失敗によるパニックが発生します。

現象・ログ

thread '' panicked at crates\voicevox_core\src\core\status.rs:219:17:
missing session set for `ExperimentalTalkDomain` (should be checked in `VoiceModelHeader::new` and `ids_for`)
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

再現手順

  1. ストリーミングに対応していないVVMを読み込む
  2. そのVVMのスタイルに対してgenerate_full_intermediateまたはrender_audio_segment関数を呼び出す
  3. パニックが発生する

期待動作

StyleNotFoundエラーが返されるべき?
アサーション失敗によるパニックは意図しない動作っぽみ。

VOICEVOXのバージョン

voicevox_core 最新版(0.16.x系)

OSの種類/ディストリ/バージョン

  • Windows
  • macOS
  • Linux
  • Android
  • iOS

(OS非依存の問題と思われます)

その他

関連PR: VOICEVOX/voicevox_engine#1823

この問題により、PythonのCDLLからは関数のリストが取得できないため、実際に関数を呼び出すまでパニックが発生するかどうかを事前に判定できません。
voicevox_core側で適切にStyleNotFoundエラーを返すようにすることで、より安全で予測可能なエラーハンドリングが可能になります。

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions