🗣️

自作ウェブアプリを使って自分でJVS/声優統計コーパスの読み上げを録音した話

2022/03/07に公開

概要

以下の記事で「簡単に原稿を読み上げて録音できるウェブアプリケーションをStreamlitで作った」というツールの紹介をしました。

https://zenn.dev/yag_ays/articles/368ebbb637c102

ソフトウェア開発界隈ではEat your Own Dog foodという言葉があるように、作ったからには自分で試してみないとねということで、私も自分の声の音声データを作成してみました。この記事では、自作の原稿読み上げウェブアプリケーションを自分で利用しながら感じた使用感や、音声データ収集の難しさについて雑多に書いてみようと思います。

読み上げ対象

今回はJVSコーパスにおけるvoiceactress100を読み上げました。これは声優統計コーパスが作成した音素バランス文100文に対して、句読点情報が付与されたものです(参考)。また、読み上げ時にはルビ情報が付加された以下のサイトに掲載されているテキストを利用しました。

読み仮名(ルビ)つき声優統計コーパス音素バランス文

読み上げ方法

読み上げ方法としては、画面に表示される001から100までの文を順に読み上げていきました。読み上げた音声は必ず一度再生し、読み間違いやイントネーションの問題がないかを確認しました。問題がある音声は破棄し、再度録音し直しました。

録音環境は自宅、PCはMacBook Pro、マイクはMarranz MPM2000-Uにポップガードを付与し、マイクから10cm程度の距離で発声しました。


録音環境

作成した音声ファイル

読み上げ素人の男性(30代)の肉声が聞きたいという稀有な方は、以下の場所からお聞き下さい。

https://www.dropbox.com/sh/ddxhdsp8806ujan/AADc-oI3s7ykYy5HnLNZwlYra?dl=0

結果

気合で読み上げを行った結果、

  • 読み上げ自体にかかった時間: 52分
  • 読み上げた文字数: 3,971文字 (句読点含む)
  • 作成された音声ファイルの合計時間: 967秒 (16.1分)

でした。

上記の結果から、作業全体の時間は録音の3倍くらいの時間が掛かっていることがわかります。これだけ時間がかかった理由として、以下の作業が挙げられます。

  • 自身の発声した録音を確認のために再生する
    • 単純計算で、これだけで発声自体の2倍の時間が掛かります
    • 一人で作業をしているため、ある程度のクオリティを担保するためには、自身が発した音声を聞き直す必要がありました
  • 原稿を読んで発声内容を確認する
    • 少し長いフレーズや読みに難しい単語がある場合、まず頭の中で予行練習をする必要があります
    • 今回のコーパスには外国の地名や人名が含まれていたため、実際に声に出して確認する必要がありました
  • 何らかの理由により再録音する
    • 言いよどみ、読み間違い、発音ミス、イントネーションのミス、無視できないほどのリップノイズなどが起きた場合は、録音し直しました
    • 雑音が入ってしまった場合にも録音し直しました (救急車の音、飼っている犬の足音など)

体感としては、読み間違いや失敗による再録音にかなりの時間を使ってしまったという印象でした。一方で、音声ファイルの管理や原稿の準備にはほとんど時間を使わなかったので、この点は効率化が出来たと思っています。

音声データ収集について

読み上げの難しさ

自分で発声して録音する中で、読み上げの難しさを改めて実感しました。今回読み上げる対象となった音素バランス文は、多様な発音が網羅されている文を厳選して列挙しているため、普段発声しないような単語なども含まれています。

特に難しかったのがVOICEACTRESS_084の以下の文です。

少年時代はロシア帝国チェルニーヒウ県プルィルークィ郡トロスチャヌィーツャ村で過ごした。

パウロー・スコロパードシクィイ - Wikipedia

「プルィルークィ」は「プリルークイ」と読んでしまったり「プルィユークィ」と読んでしまったり、「トロスチャヌィーツャ」は「トロヌチャヌィーチャ」と読んでしまったり……。1文の中に難しい単語が2つあると、どちらも同時に成功させないといけないのが大変でした。

クオリティ担保の難しさ

私は読み上げや発声、朗読に関しては完全に素人なので、読み上げのクオリティはかなり低いと思います。実際に声優統計コーパスが配布しているプロの女性声優の声を聴き比べたときに、以下のような差がありました。

  • 滑舌が悪い
    • 文字や単語間のメリハリがない、単語や文節内の抑揚がないなど
  • 読み上げ文内での声量が安定しない
    • 読み上げ時に発声の最初の方は声が大きいが、次第に小さくなっていく (肺の息が足りなくなってくるため)
    • 難しい読みのときに、特に声量が小さくなる (自信がない、体がこわばってしまう)

アナウンサーや声優など声の仕事をしている方の専門技能は凄いなと、改めて思い知らされましたね……。それにしても、自身の講演時の動画とかもそうですが、自分の声を聞くのは辛いです。

今回の収録では綺麗な読み上げ音声を作成すること自体が目的ではないですが、機械学習の利用用途によって異なる部分でしょう。例えば音声認識タスクであれば、多様な読み上げの録音があったほうが、ロバストな音声認識モデルが作れるといったことがあると思います。一方で、自分の音声合成モデルを作ろうといったときには、変な読み上げの発音が音声合成モデルの出力に意図せず出てくることも考えられるため、なるべく綺麗な発音をしないといけないケースもあります。

自作ソフトウェアとしての良かった点/改善点

さて、今回自作したウェブアプリケーションで収録をしたのですが、結果としては自分で言うのもアレですが、便利で使いやすかったです。録音時間も1時間程度掛かりましたが、これをQuickTimeなどの単なる録音アプリで行おうと思うと、もっと時間が掛かっていたのではないかと思います。個人利用であれば、これくらいで十分じゃないかという手応えを感じました。一方、幾つか足りない機能も見えてきたので、この辺は今後の宿題にしたいと思っています。

良かった点

  • 音声ファイル自体を操作して頭出しをしたり切り出したりといった操作が不要だった
    • 極力手間を省いて、音声録音に集中できる点がとても良かったです
  • 再録音が簡単にできた
    • 読み間違えたときに再度録音ボタンを押すだけで新たに録音を開始できるのは、トライアル・アンド・エラーが容易で良かったです
  • 原稿にルビを表示できた
    • ルビは本当に有用でした
    • 漢字なんてだいたい読めるだろうと持っていましたが、頭の中で読めるのと発声時に間違わないのは別でした
    • 読みが不安になったときに検索したり確認する手間が省けるのは、効率化にとても寄与しました
  • 進捗がプログレスバーで可視化されて確認できた
    • 単純作業でだんだん疲れて心が折れてくるので、あとちょっとという情報はメンタルを保つ上で重要でした

改善点

このあたりは私の今後の開発に向けた備忘録です。

  • 原稿の改行位置が悪く、音の区切り
    • 原稿は基本的に多めに句読点が打ってあり分かりやすいのですが、それでも画面の改行位置によっては間違えてしまうことがありました
  • カタカナの単語のアクセント位置がわかりにくい
    • 複数のカタカナ単語がまとまっている場合、どこまでが一区切りなのかわかりにくく、アクセントが付けづらいことがありました
  • Zipファイルで結果をダウンロードするときに圧縮処理の進捗がわかりにくい
    • 処理自体に少し時間がかかるのにも関わらず、ボタンを押しても何も表示されないので心配になる

まとめ

今回は、自身で作成した原稿読み上げ録音用のウェブアプリケーションを使って、JVS/声優統計コーパスにある100文を自分で読み上げて、その使い勝手や課題を確認しました。機械学習のアノテーションでも言えることですが、自分でやらないと作業自体の課題を把握できないので、こうして自ら手を動かすことは大事ですね。

Discussion