@onjmin/dtm
    Preparing search index...

    Function buildStreamVoiceNotes

    • 音節列と演奏ノート列を突き合わせ、ストリーミング用のノート列を組み立てる。

      音節とノートは発音順(startStep昇順)の index で1:1に対応する。これは ピアノロールの歌詞表示(renderer.drawNoteLyrics)とも共通の規則。

      継続記号(ー / 〜)はここでノートへ畳まれる:

      • 直前ノートと隙間なく続いているなら1音へ結合し、StreamVoiceNote.pitchSegments としてピッチ推移だけを持たせる(=1回の合成で歌い切る)。
      • 隙間がある/TIE_MERGE_MAX_SEC を超えるなら結合をやめ、 StreamVoiceNote.continuation を立てた別ノートとして繋ぐ。
      • シークで先頭が切り落とされた継続(結合相手が居ない)も同じく継続ノートになる。

      隙間の判定はゲート適用前のステップで行う。ゲートを短くすると全ノートの間に 隙間ができるが、それは発音長の設定であって「音が途切れている」ことではないため。

      Parameters

      Returns StreamVoiceNote[]