2007年10月01日

VOCALOID モドキを作ってみる -- 第2報 --

Web拍手:



歌うTiMidity の発案者の木本雅彦さん http://www.earthlight.jp/
こえうぇぶ で声素材の提供をされている,さかいれいしうさん http://www.reisiu.info/
にお知らせしたところ,歓迎していただけたました.やっほー.


さて,第2報です.
第1報で興味をもってくれたのぐちくんが,それぞれの声素材の基本周波数を推定するプログラムを Python で書いてくれました.ありがとー!
Messenger でやりとりしながら,若干の工夫をしたところ,かなりきれいに推定できました.
それを基にして,TiMidity++ のコンフィグファイルで,声素材それぞれの tune パラメータを調整しました.
コンフィグファイルの書き方の参考にしたサイトは,ここです.
http://timidity.s11.xrea.com/files/doc-cfgj.htm

tune = log a の F/F0

F: 目標周波数 (hz)
F0: 素材の基本周波数 (hz)
a: 2^(1/12)

tune パラメータを調整したコンフィグファイル koeweb.cfg をここに置いておきます.
http://noike.info/~kenzi/cgi-bin/koeweb.cfg

さて,第1報のときに作った MML を一度使って,調整前と後との違いを聴き比べてみましょう.

調整前:



調整後:



おぉぉ! かなりイイトコいってる.
ピッチがぴっちり合ってる.
「荒城の月」のデータが向上した!

次は,Soundfont 化と,Velocity 調整かな.
木本さんに,「MML2MP3をWeb上に作っても面白いかと思います」と,アイディアをいただいたので,それも面白そう.
あとは,
こえうぇぶ にある,「ささやき声」にも挑戦したいところ.


ということで,第3報もあるかもしれません.

--

VOCALOID モドキを作ってみる -- 第1報 --
http://cancoffee2.at.webry.info/200709/article_27.html

--
【日常の一コマの最新記事】
posted by NOIKE at 04:21 | Comment(12) | TrackBack(26) | 日常の一コマ | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
timidity?のリサンプリングアルゴリズムは変更できるのかな?この先の音質向上を目指すなら、ここが肝でしょう。
--
Posted by のぐち at 2007年10月01日 05:06
PCMの最大振幅が出たところ以後でfftを掛けるようにしたら、全サンプルにfftをかけたのより1Hzほど高めの周波数が出てきた。人間の声は立上りは低い周波数になる傾向があるのでしょう。これでもうちょっと音程が修正されると思います。
--
Posted by のぐち at 2007年10月01日 07:26
私の耳じゃあ数Hz程度の違いは聞き取れないです^^;

ビブラートとかできるようになるとかっこいいかもですねー。
続報をwktkしながら楽しみにしております♪
--
Posted by ちゃっぴいの兄 at 2007年10月05日 21:00
のぐちくんは,特にどこからどこへの音程が気になる?
調整をする場合は,そこに注目して調整したほうがよさそう.

--
Posted by NOIKE at 2007年10月14日 16:50
ちゃっぴい兄さん,MIDI のコマンドは全部使えるようになると思って,楽しみにしておいてください.
ymmttak さんにもよろしくー.

--
Posted by NOIKE at 2007年10月14日 17:08
はじめまして.
現在似たようなテーマで研究していて,ちょうど作れないかなーと思っていたので,記事を読んでみてびっくり,でした.

リサンプリングの問題は,あらかじめリサンプリングした波形をPatchに登録する方法である程度カバーできないかな,とか思いました.
Patch内の波形が多ければ(例えば1オクターブに3つくらい波形を登録するとか)Timidity側でのピッチシフト量も減りますし….

patch内部で波形の数と,それぞれの基本周波数と,それを変換できる上限・下限の周波数を定義できるので,それを考慮してPatch設計するだけで結構変わってきそうな気がします.
--
Posted by Kou at 2007年10月17日 11:31
Kou さん,はじめまして.
今後もどうぞよろしくー.
先に精度よくリサンプリングしておける場合は,そのほうがよいと思います.
ただ,お気づきだと思うのですが,本質的な解決方法ではないので,劇的な向上は望めないのではないかとみています.
また,歌声の場合は,個々の音素の音高の正確さよりも,直前の音素とのつながりのなめらかさのほうが,人間には意識されやすいと思います.
ですから,もしきちんと取り組まれるのであれば,そこそこの音高の正しさを得られたあとは,各音素をなめらかにつなぐほうに注力されたほうがよいと思います.
研究としても,そちらのほうが成立しやすいでしょう.
VOCALOID にも,各音素間をなめらかにつなぐ仕掛けが入っています.

--
Posted by NOIKE at 2007年10月20日 18:04
"VOCALOIDモドキ" ではたいそうなことをするつもりが全然なくて(^^;),できあいのものを利用し,調整・加工することで,ある程度のことができてしまえば,私個人としては満足です.
それよりも,ツールとして公開したときに,ユーザがおもしろい使い方をしてくれることのほうに期待しています.
もし,声の提供があったら,積極的に組み込みたいと思っています.
現段階では,自由に使える声素材の少なさが,私のような素人には辛いところです.

--
Posted by NOIKE at 2007年10月20日 18:09
あとは,楽器音のサンプリング・再生と違って,「フォルマント」を意識するとよいのかもしれません.
ホーミーという歌唱法では,二つの基本周波数を同時に発声させられる(感じられる)のは,なぜか,など.

フォルマントに着目した製品を,ヤマハは発売していたことがありましたが,あまり売れませんでしたね.
あれは,VOCALOID と違って,サンプリングすることなしに,計算することによって発声させています.
製品化していない技術も山ほど持っているでしょうから(特許化しているでしょうから),そこから調べ始めるというのも,論文から調べる以外の,もうひとつの方法だと思います.

--
Posted by NOIKE at 2007年10月20日 18:20
csoundで日本語フォルマントをコーディングするということをやっている人が居た。母音だけだけど、ちゃんとあいうえおに聞こえたよ。こういう計算で発生させる声に声質を乗せるにはどうしたらいいんだろう。後段でエフェクターを通すだけでできるのだろうか。フォルマントの周波数構成で男とか女とか年齢とかは制御できるみたいだけど、伸びのある声とかハスキーとか声質はどうしたらいいのかね?
--
Posted by のぐち at 2007年10月21日 05:39
昨日教えてもらった,これですね.
http://d.hatena.ne.jp/A9A9/20070906/1189100134

分析データがあるといいなー.
いろいろな人の多様な声コーパス,ほしー.

--
Posted by NOIKE at 2007年10月24日 21:00
フォルマント、なつかしー。
大学の時に音声認識・合成とかやってました。
音声の生データ(PCM)から、認識に使える特徴抽出として使ってました。(あの頃はニューラルネットワークが盛んで、大学院の時はHMMが出始めだったかな)

逆に、周期的なパルスを機械的に作って、抽出した情報(いわゆるフィルター)に食わせると音声になって出てきたりして。
パルスを変えると歌みたいにも出来たりして面白かった。。。
--
Posted by だ at 2007年11月13日 12:41
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバック

VOCALOID モドキに名前をつける
Excerpt: "VOCALOID モドキ" だと,人に紹介するときに困るので,VOCALOID モドキに名前をつけることを考えてみる. --
Weblog: とりあえずコーヒーを飲もう
Tracked: 2008-10-15 16:58

VOCALOID モドキに,しゃべらせてみる
Excerpt: 「歌わせる」のではなく,「しゃべらせる」ことを思いついた. --
Weblog: とりあえずコーヒーを飲もう
Tracked: 2008-10-15 16:58

VOCALOID モドキに,しゃべらせてみる
Excerpt: 「歌わせる」のではなく,「しゃべらせる」ことを思いついた. --
Weblog: とりあえずコーヒーを飲もう
Tracked: 2008-10-15 17:50

VOCALOID モドキ「ぼーか郎」を作ってみる -- 第3報 --
Excerpt: ささやき声,始めました. (「冷やし中華,始めました」のようだ) --
Weblog: とりあえずコーヒーを飲もう
Tracked: 2008-10-15 17:51

VOCALOID MIDI 形式
Excerpt: なんだかんだいいつつ,「VOCALOID2 初音ミク」を入手(^^;). Sofmap で 14800 円.ポイントもかなりついていた気がする. 「研究会に備えて... 」とか,「長嶋さんも買うそうだ..
Weblog: とりあえずコーヒーを飲もう
Tracked: 2008-10-15 17:52

VOCALOID モドキ「ぼーか郎」を作ってみる -- 第4報 --
Excerpt: -- 第3報 --にコメントをくださった方々,どうもありがとうございました. ひとまず,「ぼーか郎」を MML to MP3 という形で公開してみることにしました. ということで, --
Weblog: とりあえずコーヒーを飲もう
Tracked: 2008-10-15 17:54

もっと手軽に「ぼーか郎」
Excerpt: MML はめんどくさいし,よくわからない, MIDI のプログラム・バンク設定って,どうやるの? というあなたのために,音源の選択のひとつとして 「れいしう 普通の声 "ら"」 「れいしう 普通の声 ..
Weblog: とりあえずコーヒーを飲もう
Tracked: 2008-10-15 17:55

ぼーか郎 MML サンプル -- 「謎」っぽいもの
Excerpt: とりあえず,ロボット声の人ということで,小松未歩の「謎」っぽい MML を作ってみました. (別に,小松未歩を演りたくて,「ぼーか郎」を作ったわけじゃないですよー) --
Weblog: とりあえずコーヒーを飲もう
Tracked: 2008-10-15 17:57

ぼーか郎 MML サンプル -- 息継ぎのエミュレート
Excerpt: [ささやき声] を使って,息を吸い込む「息継ぎ」の音をエミュレートしてみます. とりあえず,小松未歩の「願い事ひとつだけ」っぽい MML を作ってみました. (また,小松未歩かい!) --
Weblog: とりあえずコーヒーを飲もう
Tracked: 2008-10-15 17:58

SMF to MP3 with ぼーか郎のための SMF サンプル
Excerpt: SMF to MP3 with ぼーか郎 のための SMF サンプルを作ろうとしたら,結構な手間でした. いま現在は,歌う SMF の作り方 にあるように,プログラムチェンジに直して打つ,というかなり..
Weblog: とりあえずコーヒーを飲もう
Tracked: 2008-10-15 18:01

ほかにも MML で歌声生成をしている方がっ!
Excerpt: FlMML - Flashでも初音 http://sketch.txt-nifty.com/blog/2007/10/flmml_3966.html --
Weblog: とりあえずコーヒーを飲もう
Tracked: 2008-10-15 18:02

フォルマント・シンギング
Excerpt: うーむ,計算機の処理能力が速くなったこともあるし,今一度,フォルマント・シンギングをまじめにやったほうがいい気がしてきた. 10 年前と違って,専用の DSP がいらないもの. フォルマント・シンギン..
Weblog: とりあえずコーヒーを飲もう
Tracked: 2008-10-15 18:04

ぼーか郎 MML サンプル -- 「よ〜ろれいっひー」
Excerpt: マイミクシィのきむりんさんが,「よ〜ろれいっひー」と歌う MML を作成してくださいました. きむりん,ありがとう! --
Weblog: とりあえずコーヒーを飲もう
Tracked: 2008-10-15 18:07

FlMML(はてなダイアリーの MML)に,暫定的に対応
Excerpt: MML to MP3 with ぼーか郎で,暫定的にではありますが, FlMML(はてなダイアリーの MML)も受け付けられるようにしました. [MML を直接書く] の下のラジオボタンで選択してくだ..
Weblog: とりあえずコーヒーを飲もう
Tracked: 2008-10-15 18:09

全角空白文字を含む MML
Excerpt: MML に全角空白文字が含まれていても受け付けられるようにしました. 確かに,これは正しい MML に見えます. 見た目にはわからないですね... . 連絡をくださった方,どうもありがとうございました..
Weblog: とりあえずコーヒーを飲もう
Tracked: 2008-10-15 18:11

ぼーか郎による着うた生成(実験中)
Excerpt: ぼーか郎で着うた(着信音に設定できる iモーション)を生成できないものかと試行錯誤しています. これが成功すれば, --
Weblog: とりあえずコーヒーを飲もう
Tracked: 2008-10-15 18:14

SMF to 着うた(iモーション)
Excerpt: 「SMF to MP3 with ぼーか郎」の着うた生成機能ですが,ファイルサイズを 300kB に抑える制限も動いた(結局,演奏できる程度にぶっち切り(^^;))ので,試験的に公開してみます. 運が..
Weblog: とりあえずコーヒーを飲もう
Tracked: 2008-10-15 18:16

着うたへの変換時のパラメータを,ユーザが選択可能に
Excerpt: http://cancoffee2.at.webry.info/200801/article_2.html ところで,携帯用 3GP ファイルの適切なエンコードパラメータって,どれくらいなのでしょうね..
Weblog: とりあえずコーヒーを飲もう
Tracked: 2008-10-15 18:21

ろーか郎
Excerpt: "ぼーか郎" でぐぐってみると,ローカルコンピュータ上での動作を希望する声があった. ローカルコンピュータ上で動作する "ぼーか郎",略して "ろーか郎" をそのうち作ってみよう. --
Weblog: とりあえずコーヒーを飲もう
Tracked: 2008-10-15 18:25

五線譜上の歌詞を歌わせる
Excerpt: MusicXML to MP3 with ぼーか郎を正式公開しようとしつつあります. 一応,現段階でも公開していますが,トランスポーズ機能(音高をシフトして歌声が自然になる音域に調整できる機能)をつけ..
Weblog: とりあえずコーヒーを飲もう
Tracked: 2008-10-15 18:33

MusicXML to MP3 with ぼーか郎
Excerpt: トランスポーズ機能もつけたので,正式に公開します. スライダーでしか指定できないけれど,まぁ,いいや(^^;). --
Weblog: とりあえずコーヒーを飲もう
Tracked: 2008-10-15 18:38

Recordare に置いてあるサンプル MusicXML を歌わせてみる
Excerpt: Recordare MusicXML Samples --
Weblog: とりあえずコーヒーを飲もう
Tracked: 2008-10-15 18:40

SMF Lyric メタ・イベントを歌わせる
Excerpt: SMF Lyric メタ・イベントを歌わせる機能を公開しました. 半ば,やさぐれてきているので,もう,なんでも歌わしちゃう. --
Weblog: とりあえずコーヒーを飲もう
Tracked: 2008-10-15 18:46

FlMML(はてなダイアリーの MML)に,かなり対応
Excerpt: MML to MP3 with ぼーか郎の中で行っている「FlMML の MML を mml2mid の MML に変換する処理」の改良を行いました. 「FlMML(はてなダイアリーの MML)に,暫..
Weblog: とりあえずコーヒーを飲もう
Tracked: 2008-10-25 01:54

現在,調整前.
Excerpt: 現在,調整前. 水面下で進行中... . --
Weblog: とりあえずコーヒーを飲もう
Tracked: 2008-10-31 22:41

いまさらではありますが,SMF to MP3 の中身を,UTF-8化しました.
Excerpt: SMF to MP3 with ぼーか郎 http://noike.info/~kenzi/cgi-bin/smf2mp3/ --
Weblog: とりコー
Tracked: 2010-03-03 05:22