アバウト(About)

Macが歌うについて
using Talker Plug-in
| 歌テキストのヒント | 埋め込みコマンド | Talker用のコマンド |

| その他追加情報  | Down Load |   |

| Macが歌う(Home) | 歌の目次(Contents) | リンク(Links) | アバウト(About) |


以下、[Speak]で音声を聴くことができます。
またサンプルをSimpleTextにコピー後サウンドメニュー/音声/Princessで読ませてもいいでしょう。


歌テキストのヒント

このサイトの歌テキストの歌詞は 英文(およびローマ字)で書いてあるものと、
発音をアルファベットで表現した音素(Phoneme) で書いてあるものがあります。
ローマ字は、日本語に聞こえようにするために以下のように変更してあります。

●50音とイロハ歌
[Speak]

ah e oo eh o,
ka ke koo keh ko,
sa c soo seh so,
ta chee tsoo teh toh,
na ne noo neh no,
ha he hoo heh ho,
ma me moo meh mo,
ya e you yeh yo,
la lee loo leh loh,
wa wi woo weh wo on,

e lo wa ne o eh doh,
chee lee noo loo wo,
wa ga yo ta leh zo,
tsoo neh na la moo,
oo e no o koo ya ma,
kyo o ko eh teh,
ah sa ke you meh me c,
eh e mo seh zoo

●「いんぐりっしゅてきすととぅすぴーちが 日本語風に読んでくれるように
ローマ字をかなりいじってあります」だったら
[Speak]

りっしゅとぅ
eingoolissyootehkesootohtwosoopechiga,

nehoongowhooone,yoondehkoolehlooyoone,

じって
loomagwo,kanaleeezittehrleemasoo

●また埋め込みコマンド[[rate word/分]]
バイブレーションを使うこともできます。
[Speak]

ah e oo eh
[[rate 480]]o o o o o o o o
[[rate 100]]la li loo
[[rate 1500]]loo loo loo loo loo
[[rate 100]]leh lo

●英単語で、複数の音符にまたがったり音をのばすときは
適当に文字を増やしておきました。
[Speak]

ho o o o o ome,
bra ah ah e eat,
spe e e e eech,
speh eh eh ace

音素(Phoneme)を使うには、最初に[[inpt PHON]]~([[inpt PHON]]_)を付けて
音素(Phoneme)として読よむように命令してやります。
逆に音素(Phoneme)をやめて通常の英文に戻すときは[[inpt TEXT]]~。
例えば「あいうえおかきくけこさしすせそ」の音素(Phoneme)は
「AA IY UW EH AO」が母音、「k」と「s」が子音になっています。
[Speak]

[[inpt PHON]]~AA IY UW EH AO kAA kIY kUW kEH kAO sAA sIY sUW sEH sAO
さらに日本語発音として使えそうな音素(Phoneme)を
音素(Phoneme)辞書にまとめてあります。

をのばすには
のばしたい母音のまえに「>」を付けたり
同じ母音を増やしてやります。
逆に短くつめる場合は「<」。
休符として間をあけるためには、ブレス「@」やサイレンス「%」。

例えば「すたーとれっくねくすとじぇねれーしょん」だと
[Speak]

[[inpt PHON]]~sUW t>>>AA tAO lEH k<<<<<UW%
nEH kUW sUW tAO JyEH nEH l>>>EH SAO n


埋め込みコマンド

テキスト文の中に[[と]]で括って埋め込んだもので、自身は発音されず、それ以降の文字を そのコマンドにしたがって発音させるためのものです。

[[pmod 数字]][[pmod 0]]として発音を平坦にする
[[rate 数字]]テンポや音符の長さ、バイブレーションに使える
[[pbas 数字]]音程をコントロール
[[volm 数字]]ボリューム

などがあり、同種のコマンドでつぎの変更があるまで有効。

●まず日本語風の「どれみふぁそらしど」をローマ字と音素(Phoneme)で。
[Speak]

ローマ字 (inpt TEXT]]~は省略可能)
[[pmod 0;rate 80;inpt TEXT]]~
[[pbas 60]]doh
[[pbas 62]]leh
[[pbas 64]]me
[[pbas 65]]fa
[[pbas 67]]so
[[pbas 69]]lah
[[pbas 71]]she
[[pbas 72]]doh,

音素 (Phoneme)
[[pmod 0;rate 80;inpt PHON]]~
[[pbas 60]]dAO
[[pbas 62]]lEH
[[pbas 64]]mIY
[[pbas 65]]fAA
[[pbas 67]]sAO
[[pbas 69]]lAA
[[pbas 71]]sIY
[[pbas 72]]dAO

この[[pmod 0;rate 80]]や[[pmod 0;rate 80;inpt PHON]]はそれぞれ [[pmod 0]][[rate 80]]、[[pmod 0]][[rate 80]][[inpt PHON]]と 同じです。

[[pmod 数字]]

歌らしくするために最初に[[pmod 0]]を付けておきます。
数字が小さいほうが、より歌らしくなるので数字は最小の0にします。

もし[[pmod 0]]を省略すると
[Speak]

[[rate 80]]
[[pbas 60]]doh
[[pbas 62]]leh
[[pbas 64]]me
[[pbas 65]]fa
[[pbas 67]]so
[[pbas 69]]lah
[[pbas 71]]she
[[pbas 72]]doh

数字を大きく、例えば[[pmod 100]]にすると
[Speak]

[[pmod 100;rate 80]]
[[pbas 60]]doh
[[pbas 62]]leh
[[pbas 64]]me
[[pbas 65]]fa
[[pbas 67]]so
[[pbas 69]]lah
[[pbas 71]]she
[[pbas 72]]doh

[[rate 数字]]

数字はword/分で大きいほど速くなります。
音符の長さとして使ったり、歌全体のテンポとして使うことができます。
あるいは数値を極端に大きくしてバイブレーションとして使うこともできます。
[Speak]

[[pmod 0]]
[[rate 80]]
[[pbas 60]]doh
[[rate 160]][[pbas 62]]leh
[[rate 320]][[pbas 64]]me
[[rate 640]][[pbas 65]]fa
[[rate 5]][[pbas 67]]so
[[rate 40]][[pbas 69]]lah
[[rate 80]][[pbas 71]]she
[[rate 10]][[pbas 72]]doh

私は[[rate 数字]]は歌全体のテンポとして使い「同じ文字の追加」や「>」や「<」で
音符の長さを適当に決めることのほうが多くなっています。
[Speak]

同じ文字の追加
[[pmod 0;rate 200]]
[[pbas 60]]doh o o o
[[pbas 62]]leh eh
[[pbas 64]]me
[[pbas 65]]fa ah ah ah
[[pbas 67]]so
[[pbas 69]]lah
[[pbas 71]]she e e e e e e e
[[pbas 72]]doh

音素 (Phoneme)の場合「>」と「<
[[pmod 0;rate 100;inpt PHON]]~
[[pbas 60]]d>>>>>AO
[[pbas 62]]l<<<EH
[[pbas 64]]mIY
[[pbas 65]]f>>>AA
[[pbas 67]]s<<AO
[[pbas 69]]l>AA
[[pbas 71]]s>>IY
[[pbas 72]]d>>>>>>AO

[[pbas 数字]]

これが音程をコントロールします。 数字を60にすると「中央のド」になり、半音が1。
女声系voiceのKathyやPrincess,そしてJuniorのときは 楽譜の「中央のド」をそのまま60として音程をプラスマイナス すればよいのですが
男声系voiceのFredやRalphでは48くらいに 下げないと裏声のように聞こえます。
カウンターテナーならいいかな。

voiceのデフォルトpbas値から始まり相対的に上下する書き方もあります。
これならvoiceの区別なく使えます。さらに最初のpbas値を絶対値で与えてやれば
歌全体のキーを簡単に変更できます。

[Speak]

[[pmod 0;rate 80]]
doh
[[pbas +2]]leh
[[pbas +2]]me
[[pbas +1]]fa
[[pbas +2]]so
[[pbas +2]]lah
[[pbas +2]]she
[[pbas +1]]doh

長い歌は(30単語ぐらい)でpbasのコントロールが効かなくなるため、 30単語以内で歌のブレスや休符の位置に、ローマ字文では「,」を、音素(Phoneme)には「.~」を 付けます。

[Speak]

ローマ字文で「,」
[[pmod 0;rate 80]]
[[pbas 60]]doh
[[pbas 62]]leh
[[pbas 64]]me,
[[pbas 65]]fa
[[pbas 67]]so
[[pbas 69]]lah
[[pbas 71]]she
[[pbas 72]]doh

音素 (Phoneme)は「.~」
[[pmod 0;rate 80;inpt PHON]]~
[[pbas 60]]dAO
[[pbas 62]]lEH
[[pbas 64]]mIY.~
[[pbas 65]]fAA
[[pbas 67]]sAO
[[pbas 69]]lAA
[[pbas 71]]sIY
[[pbas 72]]dAO

30単語以内にブレスや休符のない歌は、30単語以内の適当なところに [[rate]]を大きくした文字(無音時間を短く目立たなくするため)を追加して「,」や「.~」をいれ、次に[[rate]]をもとに戻してやります。

[Speak]

「,」
[[pmod 0;rate 80]]
[[pbas 60]]doh
[[pbas 62]]leh
[[pbas 64]]me
[[rate 2000]]e,[[rate 80]]
[[pbas 65]]fa
[[pbas 67]]so
[[pbas 69]]lah
[[pbas 71]]she
[[pbas 72]]doh

「.~」
[[pmod 0;rate 80;inpt PHON]]~
[[pbas 60]]dAO
[[pbas 62]]lEH
[[pbas 64]]mIY
[[rate 2000]]IY.~[[rate 80]]
[[pbas 65]]fAA
[[pbas 67]]sAO
[[pbas 69]]lAA
[[pbas 71]]sIY
[[pbas 72]]dAO

[[volm 数字]]

[[volm 0]]〜[[volm 1.000]]
無音〜最大まで、音声のボリュームを変更できます。
[Speak]

[[pmod 0;rate 80]]
[[volm 0.05]][[pbas 60]]doh o
[[volm 0.1]][[pbas 62]]leh
[[volm 0.15]][[pbas 64]]me
[[volm 0.2]][[pbas 65]]fa
[[volm 0.3]][[pbas 67]]so
[[volm 0.5]][[pbas 69]]lah
[[volm 0.7]][[pbas 71]]she
[[volm 1]][[pbas 72]]doh o o,

[[volm 1]][[pbas 72]]doh o
[[volm 0.7]][[pbas 71]]she
[[volm 0.5]][[pbas 69]]lah
[[volm 0.3]][[pbas 67]]so
[[volm 0.2]][[pbas 65]]fa
[[volm 0.15]][[pbas 64]]me
[[volm 0.1]][[pbas 62]]leh
[[volm 0.05]][[pbas 60]]doh o o

この他にもいろいろな埋め込みコマンドがありますが
以上でたいていの「歌」ファイルが作れます。


Talker用のコマンド

●ネットスケープのプラグインTalkerを使って

[[cmnt talkerblock]]
[[cmnt talkervoice=VoiceName]]
Song(Text)
[[cmnt talkergo]]

とすれば音声を指定することができます。

[Speak]

[[cmnt talkerblock]]
[[cmnt talkervoice=Princess]]
[[pmod 0;rate 80]]
[[pbas 60]]doh
[[pbas 62]]leh
[[pbas 64]]me[[rate 2000]]e,[[rate 80]]
[[pbas 65]]fa
[[pbas 67]]so
[[pbas 69]]lah
[[pbas 71]]she
[[pbas 72]]doh.
[[cmnt talkergo]]

[[cmnt talkerblock]]
[[cmnt talkervoice=Kathy]]
[[pmod 0;rate 80]]
[[pbas 60]]doh
[[pbas 62]]leh
[[pbas 64]]me[[rate 2000]]e,[[rate 80]]
[[pbas 65]]fa
[[pbas 67]]so
[[pbas 69]]lah
[[pbas 71]]she
[[pbas 72]]doh.
[[cmnt talkergo]]

2つ以上のvoiceを同時に発声するには

[[cmnt talkerblock]]
[[cmnt talkervoice=VoiceName A]]
Song(Text) A

[[cmnt talkervoice=VoiceName B]]
Song(Text) B

[[cmnt talkervoice=VoiceName C]]
Song(Text) C
[[cmnt talkergo]]

とします。

また[[volm]]で、それぞれの音声を大小差をつけ全体には音を小さくしておき
途中で大小差を入れ替えるなどハーモニーの歌にいろいろ応用できます。 以下は2つのvoiceで同じ音階のユニゾンです。
同時発音は、コマンドや文字数が2つのvoice間で同数でない場合や、
機種やシステム構成によっては、同期しないことがあります。

[Speak]

[[cmnt talkerblock]]

[[cmnt talkervoice=Princess]]
[[volm 0.7;pmod 0;rate 80]]
[[pbas 60]]doh
[[pbas 62]]leh
[[pbas 64]]me[[rate 2000]]e,[[rate 80]]
[[pbas 65]]fa
[[pbas 67]]so
[[pbas 69]]lah
[[pbas 71]]she
[[pbas 72]]doh oh oh.

[[cmnt talkervoice=Kathy]]
[[volm 0.2;pmod 0;rate 80]]
[[pbas 60]]doh
[[pbas 62]]leh
[[pbas 64]]me[[rate 2000]]e,[[rate 80]]
[[pbas 65]]fa
[[pbas 67]]so
[[pbas 69]]lah
[[pbas 71]]she
[[pbas 72]]doh oh oh.

[[cmnt talkergo]]

以下ハーモニーの例
「大きな栗の木の下で」(作詞作曲者不詳)

[Speak]

[[cmnt talkerblock]]

[[cmnt talkervoice=Princess]]
[[volm 0.7;pmod 0;rate 80;pbas 60]]o o
[[rate 160]]ke
[[pbas +2]]na
[[pbas +2]]koo li
[[rate 80]][[pbas +3]]no o o
[[rate 160]][[pbas -3]]ke no
[[pbas -2]]se ta
[[rate 80]][[pbas -2]]deh eh eh,
[[pbas +4]]ah
[[rate 160]]na ah
[[pbas +1]]ah
[[rate 80]][[pbas +2]]ta
[[pbas +5]]toh o
[[pbas -3]]wa
[[pbas +3]]ta
[[pbas -5]]se e e e,
[[pbas +5]]ta no o
[[pbas -1]]se e
[[pbas -4]]koo
[[rate 160]][[pbas +2]]ah so b ma
[[rate 80]][[pbas -2]]show o o o,
[[pbas -7]]o o
[[rate 160]]ke
[[pbas +2]]na
[[pbas +2]]koo li
[[rate 80]][[pbas +3]]no o o o
[[rate 160]][[pbas -3]]ke no
[[pbas -2]]se ta
[[rate 80]][[pbas -2]]deh eh eh eh.

[[cmnt talkervoice=Kathy]]
[[volm 0.2;pmod 0;rate 80]][[pbas 60]]o o
[[rate 160]]ke
[[pbas -1]]na
[[pbas +1]]koo li
[[rate 80]][[pbas +4]]no o o
[[rate 160]][[pbas -4]]ke no
[[pbas -1]]se ta
[[rate 80]][[pbas +1]]deh eh eh, ah
[[rate 160]]na ah
[[pbas +2]]ah
[[rate 80]][[pbas +2]]ta toh o
[[pbas +1]]wa
[[pbas +4]]ta
[[pbas -5]]se e e e,
[[pbas +5]]ta no o
[[pbas -2]]se e
[[pbas -3]]koo
[[rate 160]][[pbas +1]]ah so b ma
[[rate 80]][[pbas -1]]show o o o,
[[pbas -4]]o o
[[rate 160]]ke
[[pbas -1]]na
[[pbas +1]]koo li
[[rate 80]][[pbas +4]]no o o o
[[rate 160]][[pbas -4]]ke no
[[pbas -1]]se ta
[[rate 80]][[pbas +1]]deh eh eh eh.

[[cmnt talkergo]]


その他追加情報

●歌に使えるvoiceのデフォルト値
voicepmodpbasrate
Fred5043160
Junior4055150
Zarvox 041160
Trinoids 057160
Princess4058150
Kathy4055150
Ralph5036150
Boing2554120

ZarvoxやTrinoids はpmodがデフォルトで0なので [[pmod 0]]コマンドを省略しても可。
ちなみにデフォルト値に戻すコマンドとして [[rset 0]] があるが、どうもうまく働かない。

●音素(Phoneme)辞書
日本語の50音プラスアルファと歌用コマンドを集 め、子音と母音の境界に「>」がひとつ 付けてあります。ことえり(Ver.1)用の辞書TEXT。
ご自由に(変更も)使ってください。

●ユーティリティ
英文を音素(Phoneme)に変換したり、voiceのデフォルト値を表示する オンラインソフトとしてSpeecher 1.2.1があります。

●AppleScript
AppleScriptで話したり歌ったりするアプリケーションを作って起動(システム終了)項目フォルダに入れて置くと面白いです。「Say」または「Speech」というスクリプティング機能追加ファイルが必要です。 「Say」はEnglish Speech Recognition 1.5(音声認識システム)についています。 私の環境(Q650+PPC)では音声認識不可のためEnglish Speech Recognition 1.5のイージーインストールはできませんでした。しかしカスタムインストール後、必要のないファイル(HDに入ったApple ExtrasフォルダのSpeech Technologyフォルダと、機能拡張フォルダに入ったSpeech Guide Additions、SpeakableItems、Speech Recognition)を捨て、Scripting Additionsフォルダに入った 「Say」をスクリプティング機能追加フォルダに移動してやりました。

English Speech Recognitionを使ってる場合は最後に初期値に戻すための処置が必要な場合もあり面倒なので、osaxen!@macscripter.netのScript Toolsに入ってる「Speech」を使うのをおすすめします。--沼口さん>感謝--

「蛍の光」スクリプトを見る


Down Load

以下ファイルでSay用とSpeech用の違いは上記「AppleScript」を参照。

SimpleText用はSimpleTextで開いて「サウンド」メニューの「すべてを話す」で歌います。このとき「音声」は「歌に使えるvoiceのデフォルト値」の表にあるvoice名から選んでください。またSimpleText用の歌をSay用とSpeech用の歌部分と置き換えたり、文頭に[[cmnt talkerblock]] [[cmnt talkervoice=Princess]]、文末に[[cmnt talkergo]]を追加、ファイル名の後に「.talk」を付けてTalker用ファイルにしてもOK。

Netscape+Talker用はSimpleTextに読ませてもいいが、プラグインTalker入りネットスケープにドラッグアンドドロップすればハーモニーになります。

<以上のファイルは全て編修可能、フリーのデータとします。>

Note+Words pvVer.98.11 (93Kbytes)
歌ファイルを作るためのハイパーカードスタック。すこし新しくなりましたが、私家版なので使い心地の悪さはご容赦を。MacinTalk 3、HyperCardまたは、プレーヤともにバージョン2.3以降必要。フリーウエアです。上記の歌ファイル、その他おまけ付。


| 歌テキストのヒント | 埋め込みコマンド | Talker用のコマンド |

| その他追加情報  | Down Load |   |

| Macが歌う(Home) | 歌の目次(Contents) | リンク(Links) | アバウト(About) |

Copyright (C) 1997-2001 by Kazita Takuya All right reserved.