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

fix compat breaking: revive workaround padding in decode() #867

Open
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

Yosshi999
Copy link
Contributor

@Yosshi999 Yosshi999 commented Nov 2, 2024

内容

#854 でdecodeからworkaround用の無音paddingを消してしまい、compatible engineの挙動が変わってしまっていた

#866 (comment) に従い、
もともと

  • Synthesizer::decode ... 無音パディングを付加
  • Synthesizer::synthesis ... Synthesizer::decode を利用
  • extern "C" fn decode_forward ... Synthesizer::decode をそのまま利用 (→無音パディングあり)

だったものに対して #854

  • Synthesizer::generate_full_intermediate ... 無音パディングなしで中間物生成
  • Synthesizer::render_audio_segment ... マージンなしで与えられた音声特徴全体で音声生成
  • Synthesizer::decode ... Synthesizer::generate_full_intermediateSynthesizer::render_audio_segment を利用(→無音パディングなし)
  • Synthesizer::precompute_render ... 無音パディングを付加して Synthesizer::generate_full_intermediate
  • Synthesizer::render ... マージンを付けて&指定された区間で Synthesizer::render_audio_segment (+暗黙的にパディングが除去される)
  • Synthesizer::synthesis ... Synthesizer::precompute_renderSynthesizer::render を利用
  • extern "C" fn decode_forward ... Synthesizer::decode をそのまま利用(→無音パディングなし)

になっていたので、

  • Synthesizer::generate_full_intermediate ... 無音パディングを付加して中間物生成
  • Synthesizer::render_audio_segment ... マージンを付けて&指定された区間で音声生成
  • Synthesizer::decode ... Synthesizer::generate_full_intermediateSynthesizer::render_audio_segment を利用
  • Synthesizer::precompute_render ... Synthesizer::generate_full_intermediate を利用
  • Synthesizer::render ... Synthesizer::render_audio_segment を利用
  • Synthesizer::synthesis ... Synthesizer::precompute_renderSynthesizer::render を利用
  • extern "C" fn decode_forward ... Synthesizer::decode をそのまま利用
  • 将来実装する extern "C" fn generate_full_intermediate ... Synthesizer::generate_full_intermediate をそのまま利用
  • 将来実装する extern "C" fn render_audio_segment ... Synthesizer::render_audio_segment をそのまま利用

に変更した

関連 Issue

その他

@Yosshi999 Yosshi999 marked this pull request as ready for review November 3, 2024 07:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant