SVX日記

2004|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|

2011-05-20(Fri) チープに歌うLinux「妖音リナ」

  先日、思わせぶりなことを書いたが、なんでいきなり昔作ったDTMアプリを引っ張り出してきたかというと、Linux上でOSSだけを組み合わせて「歌わせてみた」いから、そのための前哨戦だったワケだったりする。

  なんだかんだいって、以前に作曲のマネゴトをしてたワケだし、いまこの瞬間も「初音ミク」には手を出す寸前なのだ。ただ、Windows上でGUIでってのが、オイラにとってはかなり敷居が高い。Linux用のボーカロイドが欲しい。が、ない。んじゃ、作る。

  画像の説明

  「発声」には、以前も使ったfestivalをそのまま使う。例えば「あ」を発声するには以下のようにする。

echo 'ah' | text2wave -o ah.wav; play ah.wav

  しかしfestivalはスピーチエンジンなので「音程」がない。音程を生成するためsoxを使う。

echo "ah" | text2wave | sox -t wav - ah_200.wav pitch 200

  歌の構成要素は、発声、音程と、リズムである。最後のリズムもsoxを使い、任意のタイミングでwavを重ねることで行う。

sox -M words/word_ka_900.wav "| sox words/word_wa_800.wav -p pad 0.18750" "| sox words/word_shi_900.wav -p pad 0.37500" midi/connect_vocal.wav remix -i; play midi/connect_vocal.wav

  そういえば、以前から「初音ミク」はボーカルだけのソフトなので、他のDTMで作った伴奏と、どうやってミキシングするのかが疑問だった。そもそも、MIDIファイルって、サウンドカードを経由せずにwavファイルかなんかに変換できるものなのか? できないのなら、PCのラインジャックとマイクジャックをつないで録音しなければならない? ……と思ったら、昨日のtimidityでアッサリできるようだ。

timidity -OwS midi/connect.mid -o midi/connect.wav

  そりゃ別に不思議はないわな。MIDIをデコードして、波形を/dev/dspに吐く時点で、wavに近い形式になってるんだから。

  ……っと。以上で必要になる各テクノロジは揃った。

  <暫定稿>

  「チューリップの歌」<mp3を再生する>

  「イッペイのテーマ」<mp3を再生する>

  「コネクト」<mp3を再生する>

  「かえるの歌」<mp3を再生する>

  「かえるの歌x2」<mp3を再生する>

  「かえるの歌x3」<mp3を再生する>