VOICEROID編 青空文庫を朗読できるように変換する

3年前(2007/8/31)に発売されたVOCALOID(ボーカロイド)「初音ミク」は、搭乗時に大きなインパクトがありました。コンピューターで、上手に歌を歌わせることができるようになった、というのは大きな出来事でした。しかし、ボーカロイドは歌を歌うための機能に特化しており文章を読み上げる事は得手ではありませんでした。
文章を読み上げるためのソフトも出ていましたが、月読XXXとかでは音声的に微妙な面もあり朗読させるには向いていません。ということで、ようやく普通の声(?)で朗読してくれそうなアプリケーションが発売されました。それがVOICEROID+ 民安ともえ(弦巻マキ)です。

VOICEROID+ 民安ともえ(弦巻マキ)
http://www.ah-soft.com/voiceroid/maki/

●メーカーサンプルの音声
http://www.ah-soft.com/voiceroid/maki/tamiyasu_sample.wav


メーカーサンプルの音声を聞くと、まだこなれていない(実際には細かく調整するのが難しい場合がある)部分もありますが、朗読してもらうには悪くないかと思って購入してみました。
そこで、朗読少女よろしく青空文庫にあるテキストデータをVOICEROIDを使って読んでもらおうと考えました。とりあえず、選択したのは夏目漱石の「吾輩は猫である」にしました。

●吾輩は猫である
http://www.aozora.gr.jp/cards/000148/card789.html

このテキストデータをVOICEROIDに読み込ませるだけでも一応読み上げてくれます。が、青空文庫のテキストデータにはルビや注記などが文章中に混じっており、それらも読み上げてしまいます。そこで、不要な記号とルビを削除し、VOICEROID用に変換する必要があります。
その変換スクリプトが以下のJavaScriptです。これはExtendScript ToolkitやPhotoshopでもIllustratorで動作します。(旧マクロメディア系以外のアプリケーションは駄目)


// 青空文庫変換 for VOICEROID民安ともえ用
(function(){
var fileObj = File.openDialog("変換元の青空文庫テキストファイルを選択してください", "*.txt");
if (!fileObj) return; // キャンセルされたら以後の処理はしない
var saveFile = File.saveDialog("保存するテキストファイル名を入力してください", "*.txt");
if (!saveFile) return; // キャンセルされたら以後の処理はしない
if (!fileObj.open("r")){
alert("ファイルが読めません。壊れてないかチェックしてください。");
return;
}
if (!saveFile.open("w")){
alert("ファイルが書き込めません。使用中かロックされていないかチェックしてください。");
return;
}
while(!fileObj.eof){
var txt = fileObj.readln(); // 1行単位で読み込む
if (txt.substr(0,2) == "[#") continue; // 入力者注なので行単位でスキップ
txt = txt.replace(/《.+?》/g, ""); // ルビを削除
txt = txt.replace(/|/g, ""); // ルビ区切り記号を削除
txt = txt.replace(/[#.+?]/g, ""); // 文中の入力者注を削除
saveFile.writeln(txt);
}
fileObj.close();
saveFile.close();
})();
これで変換してVOICEROIDに読ませると、それなりに読み上げてくれます。しかし、吾輩は猫であるは漢字や送り仮名が古いため、調整しないとおかしく読み上げられてしまいます。VOICEROIDで単語登録する方法もありますが、とりあえず平仮名やうまく発音してくれる漢字に直して読まる必要があります。
ということで、最初の25分間だけVOICEROIDに読み上げさせてみたものを以下のページに試験的にアップしてあります。VOICEROIDはWAVE形式しか出力できませんので、iTunesでMP3形式に変換したものをアップしてあります。

http://www.openspc2.org/reibun/VOICEROID/aozora/

単語の並びなどによっては調整が難しく、ちょっと変じゃないみたいなところもありますが、十分聴くことができるかな・・・と。秋の夜長は終わってしまいましたが、冬の夜長にVOICEROIDに朗読させてみるとよいかもしれません。

[サンプルをダウンロード]