ニコ生の読み上げがVOICEVOXに対応!ずんだもんがバックグラウンドでも喋るようになるまで【ちえちゃんと秋ちゃん v2.11〜v2.12】

日常パソコン部
この記事は約9分で読めます。

こんにちは、しらかわるーむの白川秋です。

今回は、Android版ニコ生コメントビューア「ちえちゃんと秋ちゃん」の大きめのアップデートについて書きます。ニコ生のコメント読み上げがVOICEVOXに対応し、ずんだもんや四国めたんの声でコメントを読めるようになりました。

しかも、最新のv2.12.0では、ほかのアプリを使っている間もVOICEVOXの声のまま読み上げが続きます。

ただ、ここまでの道のりは一直線ではありませんでした。そこで今回は、v2.11.0でずんだもんを入れたところから、v2.12.0でバックグラウンドに対応するまでを、順番に振り返ってみます。

なお、アプリの基本的な機能や使い方は、こちらの記事でまとめています。

👉 Android版ニコ生コメントビューア「ちえちゃんと秋ちゃん」について

スポンサーリンク

この記事のポイント

  1. v2.11.0で、読み上げにずんだもん・四国めたんなどVOICEVOXの声を追加
  2. v2.11.1〜v2.11.3で、クラッシュ・設定の軽量化・試聴の即再生などを改善
  3. v2.12.0で、画面を閉じてもVOICEVOXの声のまま読み上げが続くようになった

v2.11.0:ニコ生の読み上げにVOICEVOXがやってきた

そもそもVOICEVOXとは

VOICEVOXは、無料で使える日本語の音声合成ソフトです。ずんだもんや四国めたんなど、キャラクターの声で文章を読み上げられます。動画やゲーム実況でよく耳にする、あの声ですね。

今回は、このVOICEVOXの合成エンジン「VOICEVOX CORE」をアプリに組み込みました。そのため、ネットに音声を送らず、スマホの中だけで声を作っています。

ずっと入れたかった機能でした

実は、VOICEVOXへの対応は8月の時点で一度検討していました。しかし、そのときは合成エンジン側がAndroidの新しい要件(16KBページサイズ)に対応しておらず、見送っていたんです。

その後、VOICEVOX側のアップデートでこの問題が公式に解消されました。そこで、改めて取りかかったのがv2.11.0です。

音声の一覧に、ずんだもんと四国めたんが登場

ニコ生の読み上げ音声にVOICEVOXのずんだもんと四国めたんが追加された画面

v2.11.0では、読み上げ音声の一覧にVOICEVOXのキャラクターを追加しました。選ぶだけで、コメントがずんだもんや四国めたんの声で読まれます。

いつもの標準音声とは、配信の雰囲気がガラッと変わります。たとえば、ずんだもんがコメントを読むだけで、配信全体がにぎやかに感じられるんですよね。

ただし、まずは「画面を表示している間」だけ

一方で、v2.11.0の時点では、VOICEVOXで読むのは画面を表示している間だけでした。なぜなら、バックグラウンドの読み上げは別の仕組みが担当していて、そちらはまだ標準音声のままだったからです。

つまり、ホーム画面に戻ると、声が標準音声に切り替わっていました。この点は、最初から「次の課題」として決めていました。

端末の性能で遅れることがある件

また、手元のGalaxy S10で試すと、コメントが多い配信では合成が追いつかず、読み上げが遅れることがありました。VOICEVOXは声をその場で作るため、端末の性能に左右されやすいんです。

そこで、混雑時に勝手に標準音声へ切り替えるのではなく、VOICEVOXを選ぶときに「端末の性能で遅れることがあります」と注意書きを出す方針にしました。声を選ぶのは使う人なので、先に知ってもらったうえで選んでもらう形です。

v2.11.1〜v2.11.3:使い心地を一つずつ整えた

v2.11.0を出したあとは、細かな調整が続きました。ここからは、その内容をまとめて紹介します。

v2.11.1:リリース版で落ちる問題を修正

まず、配布用に最適化したリリース版で、VOICEVOXが原因のクラッシュが起きる問題がありました。開発版では起きず、配布版でだけ起きるタイプの不具合です。v2.11.1でこれを修正し、あわせて設定画面のスクロールも改善しました。

v2.11.2:設定画面が重い・戻れない問題を解消

次に、設定画面の動きが重くなることがありました。調べてみると、設定の裏で、コメント欄と配信の映像が毎フレーム描き直されていたんです。

そこで、設定を開いている間はコメント欄の描画を省き、映像も一時停止するようにしました。もちろん、閉じればすぐ元通りです。なお、放送の音声は止まりません。

さらに、「設定を一番下までスクロールすると、上に戻りにくい」という問題も見つかりました。これは、タップ用の部品が二重に重なっていて、スクロールと指の取り合いになっていたのが原因でした。部品の組み方を直して、スムーズに戻れるようにしています。

v2.11.3:試聴がすぐ鳴る・タブレットにも対応

v2.11.3では、まずVOICEVOXの試聴を改善しました。これまでは試聴のたびに合成していたので、鳴るまで少し待たされていました。そこで、試聴用の音声をアプリに同梱し、ボタンを押すとすぐ鳴るようにしました。

また、配信に接続したときの起動アナウンスも、選んだ声で読むようにしています。最初の一言からずんだもんなので、統一感が出ます。加えて、タブレットでも使えるように調整しました。

タブレットでニコ生の読み上げとコメントを表示しているところ

メモリが少ない端末では、VOICEVOXを表示しないように

ところが、RAMが3GBのタブレットでVOICEVOXが読まれない、というケースが見つかりました。調べたところ、端末の実メモリが足りないことが原因でした。

ちなみに、「スマートメモリー」などの仮想メモリは、ストレージをメモリ代わりに使う機能です。容量は増えても速度は遅いので、VOICEVOXの助けにはなりません。

そのため、実メモリが4GB未満の端末では、VOICEVOXを音声の一覧に出さないようにしました。以前にVOICEVOXを選んでいた場合は、お知らせを出したうえで標準音声で読み上げます。

v2.12.0:バックグラウンドでもVOICEVOXで読み上げ

ニコ生の読み上げがバックグラウンドでもVOICEVOXの声で続くイメージ

そして、いよいよ本題のv2.12.0です。v2.11.0のときに残していた「画面を離れると声が変わる」問題を、ここで解決しました。

ほかのアプリを使っていても、ずんだもんのまま

v2.12.0では、バックグラウンドの読み上げにもVOICEVOXの経路を追加しました。その結果、画面を表示しているときも、ほかのアプリを使っているときも、選んだVOICEVOXの声で読み上げが続きます。

たとえば、配信を流しながらブラウザで調べものをしても大丈夫です。スマホを置いて作業していても、声が途中で変わりません。

合成エンジンを1つにまとめて、メモリを節約

VOICEVOXは、音声モデルと合成エンジンだけで数百MBのメモリを使います。もし画面表示中とバックグラウンドで別々に用意すると、メモリが2倍必要になってしまいます。

そこで、合成エンジンをアプリの中で1つにまとめ、両方から共有するようにしました。つまり、メモリを増やさずにバックグラウンドへ対応できています。

次のコメントを先に作っておく「先読み」

VOICEVOXの読み上げで次のコメントを先に合成する先読みの図解

最初の試作では、1件ずつ「作る→読む→次を作る」と順番に処理していました。しかし、S10では1文の合成に約3秒かかるので、コメントごとに待ち時間が上乗せされてしまいました。

そこで、読み上げている間に、次の2件を裏で先に作っておくようにしました。その結果、2件目以降はほとんど間を空けずに読まれます。

画面を切り替えたときの「二重読み」を防止

開発中には、「同じコメントが少し間を置いて2回読まれる」という現象もありました。原因は、画面側で読む予定だったコメントを、バックグラウンド側でも読んでいたことです。

そこで、バックグラウンドに移る瞬間に画面側の読み上げ待ちを片付けるようにしました。反対に、画面に戻ったときはバックグラウンド側の読み上げを止めます。こうして、担当の受け渡しがきれいに行われるようになりました。

なお、万が一合成に失敗したときは、そのコメントだけ標準音声で読みます。そのため、読まれずに流れてしまうことは起きにくい作りです。

正直に書いておきたい注意点

いいことばかり書くのはフェアではないので、気になる点も書いておきます。

まず、VOICEVOXの合成は端末の性能に大きく左右されます。コメントが多い配信では、読み上げが遅れることがあります。

次に、しばらくコメントがなかった後の最初の1件は、先読みができません。そのため、合成の時間(S10で約3秒)だけ待つことがあります。

また、バックグラウンドで長く使っていると、コメントの受け取り自体に少し遅れが出る場合があります。これは標準音声でも同じように起きるものですが、VOICEVOXは合成時間が加わる分、少し目立ちやすくなります。

さらに、VOICEVOXの音声データを同梱したため、アプリの容量が以前より大きくなっています。ストレージに余裕がない方はご注意ください。

とはいえ、「標準の声より、キャラクターの声で聞きたい」という方には、十分楽しめる仕上がりになったと思います。

開発の裏側:v2.12.0にした理由

今回は、バージョン番号でも少し悩みました。

v2.11.3は「画面表示中のVOICEVOXを仕上げた版」です。一方で、v2.12.0は「バックグラウンドでもVOICEVOXで読む」という新しい機能を足した版です。できることが一つ増えたので、番号を上げる意味があると判断しました。

また、バックグラウンドでの遅れをもっと詰めようと、いろいろな方法も試しました。しかし、別の不具合を呼んでしまう方法もあったので、そこは無理をせず見送っています。新しい機能で、これまでの安定性を崩さないことを優先しました。

ちなみに、このアプリはiPhone版をちえさんが作ってくれています。iPhone版のリリースまでの話は、こちらにまとめています。

👉 ニコ生コメビュ「ちえちゃんと秋ちゃん」iPhone版がついに登場!半額セールは残り3日

振り返ると、ずんだもんを入れてから、クラッシュ対策、設定の軽量化、低メモリ端末への配慮、そしてバックグラウンド対応と、一気に駆け抜けた感じです。アプリを閉じてもずんだもんの声が続いたときは、正直ちょっとうれしかったですね。

まとめ:ニコ生の読み上げを、好きな声でずっと

最後に、今回の流れをまとめます。

  • v2.11.0で、ニコ生の読み上げにVOICEVOXの声を追加した
  • v2.11.1〜v2.11.3で、クラッシュ対策・設定画面の軽量化・試聴の即再生・タブレット対応・低メモリ端末への配慮を入れた
  • v2.12.0で、バックグラウンドでもVOICEVOXの声のまま読み上げが続くようになった

生主さんの配信を「ながら見」で楽しみたい方は、ぜひアップデートして、好きな声で試してみてください。

▼Android版はこちら
👉 ちえちゃんと秋ちゃんニコ生コメビュ for Android(Google Play)

▼iPhone版はこちら
👉 ちえちゃんと秋ちゃん forニコ生コメビュ(App Store)

▼使い方は動画でも紹介しています

▼あわせて読みたい
もっと快適に!ニコ生ビューア「ちえちゃんと秋ちゃん」新機能|自枠選択と配信音声再生に対応【Android】
「読まないんだよ、主コメを」——ニコ生コメビュ v2.7.0、6セッション越しの真因にたどり着いた日

※ 本アプリの読み上げ音声には VOICEVOX を使用しています。(VOICEVOX:ずんだもん / VOICEVOX:四国めたん ほか)
音声の利用条件はVOICEVOX ずんだもん・四国めたん音源利用規約に従っています。

白川秋
白川秋

ではでは、参考までに

コメント

タイトルとURLをコピーしました