2016年8月3日水曜日

HANASU用VCVC音源 雑技術公開#03 学習と音源の使用方法

ということで引き続き、HANASU用VCVC音源の雑技術公開を行っていきます。


今回は、学習と音源の使用方法について。


一応ここまで3つの投稿で、音源製作者側、音源使用者側に必要な技術公開は完了なはず。

・学習
いきなり学習って言われてなんだそれは!ってなるかもしれませんが、エイリアス推定用のUTAUプラグイン
CVtoVCVCwithAI
で使用する学習記録ファイルを生成することです。

現状、ustからの学習は未実装であるので、学習元は、oto.iniのみです。
(ustからの学習は実装されました。 学習元は、oto.iniと調整済みustです。 )

使用するoto.iniは、前回の方法で原音設定済みのoto.iniです。

使用するoto.iniに関して、現在既知の制約は、
エイリアスに重複はないものとする
エイリアスは原音ごとに、左から順に設定されてるものとする
エイリアスは必ずひらがなと半角スペースを含む
エイリアスの接尾辞接頭辞にひらがなを含まない

です。

エイリアス重複回避は
RecordListGeneratorForHANASU
での出力からはサポートしていないので、RuthlessDragon様作成の
エイリアス重複チェックくん&修正くん
などを使用していただくと良いかと思います。

学習手順は、
1. CVtoVCVCwithAIをUTAUにインストール。
2. UTAUを立ち上げ、学習を行う VCVC音源に変更、CVtoVCVCwithAIを呼ぶ。
3. 学習元oto.iniファイルを設定し、oto.iniから学習ボタンを押す
です。
追記:調声済みustからの学習を実装しました。

学習記録ファイルは、デフォルトだと<起動中の音源名>.ini のファイル名で、プラグインexeと同じ階層に生成されます。


・音源の使用方法
以上の準備を行うと後は簡単です。

いつものように単独音エイリアスでノートを置き
※促音はQで置いてください。


CVtoVCVCwithAIを実行するのみ

CVtoVCVCwithAI実行後

後は、いつもの通りに調声すると完成です。ね?簡単でしょう?

調声後

ということで、まあ、雑でした。

面白そうだけど協力はできなそうって方は、そっとお見守りください。
この雑技術で音源作りたいって方は、バグフィックスへご協力ください。
(支援要請があった場合はサポートいたします。)

ここから別ブランチで技術展開するって方は、健闘を祈ります。
知らんがな、別アプローチするって方は、ここまで参照いただき、ありがとうございました。

以上です。

学習記録ファイルや、設定ファイル、子音アルファベット対応規則など内部情報については需要が見込まれた場合、公開します。(ファイル内見ると想像付くレベルですが)

質問、支援要請は、作者ツイッターにご連絡くださいませ。

2016年8月2日火曜日

HANASU用VCVC音源 雑技術公開#02 エイリアスと原音設定

ということで引き続き、HANASU用VCVC音源の雑技術公開を行っていこうと思います。

今回はエイリアスと原音設定について

・エイリアス
この音源において一番の特徴となるのがこのエイリアス。
見た目的にはVCVCの規則で設定しています。

以下は例

始まりが "-" ハイフンで始まるところや、
ひらがな(単独音エイリアス)の左に半角スペースがあり、左のノートの母音アルファベットが置かれるところは、皆さん見慣れたVCVのエイリアスと共通です。

違いは、 ひらがな(単独音エイリアス)の右に、右のノートの子音アルファベットが置かれているところや、
休符前(空白前)のノートの、ひらがな(単独音エイリアス)の右に "R" が置かれているところ。

また、「・・・すの・・・」あたりに注目いただけると分かるように、
「a すCn」「s のr」となっています。
母音が無声化(発音されない)場合、このようなエイリアスを設定しています。
※この場合は「す」が無声化されている。

また、促音(っ)を含む場合の例が以下

促音はQで表現しています。

子音アルファベットとひらがなの対応は今回省略。


・原音設定
原音設定用のoto.iniは前回紹介、配布していた、
RecordListGeneratorForHANASU
から出力できます。

例えば
「ポケットサイズのソースコード」
という文を追加した場合。

録音リストファイル
ポケットサイズのソースコード,ぽけっとさいずのそおすこおど,- ぽk,o けQt,eQ とs,o さi,a いz,i ずn,u のs,o そo,o おs,o すk,u こo,o おd,o どR

原音設定用のoto.ini(設定用の固定値(オーバーラップ、先行発音、子音部)が振られています)
_ポケットサイズのソースコード.wav=- ぽk,0,120,0,100,50
_ポケットサイズのソースコード.wav=o けQt,50,120,0,100,50
_ポケットサイズのソースコード.wav=eQ とs,100,120,0,100,50
_ポケットサイズのソースコード.wav=o さi,150,120,0,100,50
_ポケットサイズのソースコード.wav=a いz,200,120,0,100,50
_ポケットサイズのソースコード.wav=i ずn,250,120,0,100,50
_ポケットサイズのソースコード.wav=u のs,300,120,0,100,50
_ポケットサイズのソースコード.wav=o そo,350,120,0,100,50
_ポケットサイズのソースコード.wav=o おs,400,120,0,100,50
_ポケットサイズのソースコード.wav=o すk,450,120,0,100,50
_ポケットサイズのソースコード.wav=u こo,500,120,0,100,50
_ポケットサイズのソースコード.wav=o おd,550,120,0,100,50
_ポケットサイズのソースコード.wav=o どR,600,120,0,100,50

という結果が得られます。


原音を録音後、原音設定した例は以下です。
※原音設定時に波形を見ながら、母音が無声化されているものを特定し、エイリアスを修正しています。

先頭の音素は単独音と同様に設定。右ブランクは「次の子音もしくは母音の明確な発音」の前。


固定値(オーバーラップ、先行発音、子音部)を保持して、先行発音のみ位置を合わせる。
促音が続く場合も、右ブランクは「次の子音もしくは母音の明確な発音」の前。


子音が長い場合も同様


VC例、オーバーラップを左の母音と子音の境目に置く


(C)CV、長音例、固定値を維持して、先行発音を子音と母音の間に合わせる。
長音もしくは同じ母音が続く場合はそれらを含み、右ブランクは「次の子音もしくは母音の明確な発音」の前。


最後の音素。右ブランクは出来るだけ長く取る。


以上、エイリアスと原音設定の雑技術公開でした。

質問などあれば、作者ツイッターにご連絡いただけると対応できると思われます。

次は、音源の使用方法の雑技術公開をする予定です。