@onjmin/dtm 2.1.13 → 2.1.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +26 -0
- package/dist/index.d.mts +363 -110
- package/dist/index.d.ts +363 -110
- package/dist/index.js +2622 -486
- package/dist/index.mjs +2610 -486
- package/dist/voice-worker.js +547 -5
- package/package.json +4 -3
package/README.md
CHANGED
|
@@ -640,9 +640,35 @@ const cp = mountChordPlayer(document.getElementById("chord-app"), "| C | G | Am
|
|
|
640
640
|
| `っ` | **促音**。ノートを消費し、無音の閉鎖として間を作る | `がっこう` |
|
|
641
641
|
| `_` | **休符**。ノートを消費するが歌わない(そのノートは無音) | `あ_い` |
|
|
642
642
|
| `、` | **ブレス**。ノートは消費せず、直前ノートの尻を削って息継ぎを差し込む | `あー、いー` |
|
|
643
|
+
| `「…」` | **語り**。囲んだ部分を歌わずに読み上げる。ひとかたまりでノートを 1 つ消費する(下記) | `あ「こんにちは」い` |
|
|
643
644
|
|
|
644
645
|
`〜` は `~`(全角チルダ)でも、`、` は `,` でも書けます。
|
|
645
646
|
|
|
647
|
+
### 歌の中で語る(`「…」` 語り)
|
|
648
|
+
|
|
649
|
+
歌詞の途中を `「…」` で囲むと、その部分だけを**話し声で読み上げ**ます(UtauTTS)。歌詞と同じ行に混ぜて書けます。
|
|
650
|
+
|
|
651
|
+
```
|
|
652
|
+
@0 t120 o4 g8 g8 e8 e8 f8 e8 d8 c8 r2 c2 g8 g8 e8 e8 d4.;
|
|
653
|
+
@@0 tsukuyomi どんぐりころころ「みなさん、こんにちは!」どんぐりこ;
|
|
654
|
+
```
|
|
655
|
+
|
|
656
|
+
| 要素 | 扱い |
|
|
657
|
+
| --- | --- |
|
|
658
|
+
| `「…」` ひとかたまり | ノートを **1 つ**消費し、そのノートの位置から話し始める |
|
|
659
|
+
| 中身 | 漢字・数字・句読点を含んでよい。読みとアクセントは jpreprocess(OpenJTalk 互換)が決める。`?` で終わると語尾が上がる |
|
|
660
|
+
| ノートの長さ | 使わない。**長さは読み上げが決める**(ピアノロールに実際の長さが破線の帯で出る) |
|
|
661
|
+
| ノートの音高 | 話す声の高さ。「語りの基準」の行(音源の収録ピッチ)に置くと素の声、上に置くほど高い声 |
|
|
662
|
+
| 空の `「」` | `_` と同じ(1 ノート消費して無音) |
|
|
663
|
+
| 閉じ括弧なし | 行末までを語りにする |
|
|
664
|
+
| 直後の `ー` | 引き継ぐ母音が無いので落ちる。次の音節は語頭として歌う |
|
|
665
|
+
|
|
666
|
+
- 半角の `「」` も同じ括弧として読みます。
|
|
667
|
+
- 中身に `;` と改行は書けません(MML の区切り文字のため。エディタからの書き出しでは `;` を全角へ逃がします)。
|
|
668
|
+
- klatt では鳴りません(UTAU 音源のみ)。多音階音源はノートの音高に最も近い収録セットを使います。
|
|
669
|
+
- 初めて語りを鳴らすときに、UtauTTS の Wasm・jpreprocess の辞書・HTS 音声モデル(合計約 45MB)を取得して Cache API に保存します。配信元は `createDtmStudio({ ttsBaseUrl })` / `createSingingVoices({ ttsBaseUrl })` で差し替えられます(既定は koe のデモと同じ `https://onjmin.github.io/koe/demo/utautts/`)。
|
|
670
|
+
- 仕組み: 計画(読み → HTS の音素長と F0 → UtauTTS のユニット選択と配置)はメインスレッドで、合成は歌唱と同じ voice worker の worldline でチャンクごとに行い、届いた順にシーケンサと同じアンカーへ並べます。WAV 書き出しにもそのまま入ります。
|
|
671
|
+
|
|
646
672
|
継続の要点は「**同じモーラをピッチ違いで続けるとき、区切って発音するか否かを書き分けられる**」ことです。
|
|
647
673
|
|
|
648
674
|
```
|