VOICEVOXにコントリビュートしてみませんか?
最近、ちょっと時間があったのでVOICEVOXにコントリビュート(以下、長いので貢献といいます)してみました。
貢献したといってもドキュメントの修正や単体テストの拡充を少しやっただけですが、その活動の中で「VOICEVOXはOSSとして貢献しやすいな」と思ったので、どういった点が良いのか紹介します。
VOICEVOXとは?
VOICEVOXとは無料で使える合成音声アプリケーションで、テキストをキャラクターに読み上げてもらうことができるソフトです。VOICEVOXで使えるキャラクターは多種多様で、2025年2月24日現在で33名(!)もいます。特にずんだもんが有名で、今やゆっくり霊夢・魔理沙と比肩するほどYoutubeの解説動画などでよく使われています。
また、無料で使えるとは思えないほど品質が良く、適当にテキストを入力して読み上げさせるだけでも正確に読み上げてくれます。もちろん、「イメージと違うなあ」と思ったときは細かくイントネーションや音程・長さを調整することも可能です。
そんなVOICEVOXはOSSとして開発されているので、誰でもVOICEVOXの開発に貢献することができます。
VOICEVOXがOSS貢献におすすめである理由4選
日本語で開発されている
「はじめてOSSに貢献する」ということは、たとえちょっとした誤字修正などでもハードルが高いことだと思います。
「OSSに貢献してみよう!」と思ったときに何をしなければいけないのかというと
- 自分が貢献したいOSSを探す
- そのOSSで自分が貢献できそうな部分があるか検討する
- 開発環境を構築する
- 実際に動かしてみたり、既存のコードを読んでプロダクトへの理解を深める
- 取り組めそうなissueを探して取り組む(good first issueなど)
- PRを出す
といった流れになります。仕事ならともかく、これをプライベートの時間でやるとなると荷が重く感じてしまいます。
なので少しでもハードルが低いものに挑戦して経験を積みたい、となったときに英語より日本語のほうが認知負荷が低く、取り組みやすいと感じる人は多いのではないでしょうか。
私はまさにそうで日常的に英語を使う機会もないため、英語となると少し気合いを入れなければならず、ただでさえハードルの高いOSS貢献のハードルをより高く感じてしまっていました。
その点、VOICEVOXは日本語で開発されているため言語面でのハードルは無く、心理的抵抗を感じることなくスムーズに入っていくことができました。
貢献者に親切
VOICEVOXは貢献者に向けたドキュメントが充実しています。
たとえば、VOICEVOXプロジェクトのGithubのトップページは
- OSS版VOICEVOXはキャラクターと切り離されて開発されている
- 全体構成としては「エディター」「エンジン」「コア」に分けて開発されている
ということが一目で分かるようになっています。
そして、実際に貢献したい方向けにCONTRIBUTING.mdが用意されていて、これがかなり分かりやすく親切に書かれています。
たとえば、以下はエディタ(フロント部分)を開発しているレポジトリのCONTRIBUTING.mdです。
参加の心得や貢献の仕方、開発環境構築、PRの出し方まで丁寧に書いてくれています。
また随所に「貢献者を歓迎していること」「分からないことがあればメンテナがサポートすること」などが書かれており、はじめてOSSに貢献したいと思ってる人でも安心して参加できることが分かります。
さらに、エディタ周りは全体構成が複雑かも、ということで「コードの歩き方」というドキュメントも用意されています。コードを読む前にまず全体像を知りたいという新規参画者にとって非常にありがたいです。
上記であげた部分はエディタのレポジトリでしたが、エンジンやコアにも同様にCONTRIBUTING.mdが用意されていて、開発者がどのように貢献したらよいのか、まず何を読んで何をすればいいのかと迷うことが少なくなっています。
そして、初心者向けのissue(いわゆるgood first issue)には「初心者歓迎タスク」というラベルが貼られていて初心者が取り組みやすいissueが分かりやすくなっています。
また、実際にPRを出したときにメンテナの方が迅速にレビューしてくださったり、「こちらの興味関心にあうissueをアサインすることもできます」と言ってくださったりと温かく受け入れてくださった点もありがたかったです。
自分にあった技術領域で活動できる
上でも少し触れましたが、OSSとしてのVOICEVOXは主に以下の3つの領域に分かれて開発が進められています。
- エディタ(ユーザーが触るフロント部分、TypeScript, Vue.js, Electronで開発)
- エンジン(音声合成を行うWebAPI、Python, FastAPIで開発)
- コア(音声合成に必要な計算を行うモジュール、Rust, Onnxruntimeで開発)
なので、自分の興味のある分野や得意分野で活動できるというのも魅力です。
また上記以外にもCI/CDにGithub Actionsが使われていたりエンジンがDockerコンテナでも配布されていたりなど、DevOps周りも興味のある人は活躍できる場があると思います。
(もし好きなら)合成音声・ソフトウェアトーク界隈に貢献できる
私がなぜVOICEVOXに貢献しようかと思ったかというと、「何かしらのOSSに貢献したいな」と何となく思ってたのもそうですが、VOICEVOXだけでなくソフトウェアトーク全般(VOICEROID、VOICEPEAK、CeVIO AI等)が好きだったというのも大きいです。暇なときはニコニコ動画でソフトウェアトーク劇場を漁って見ていたりしていて、いつも楽しませてもらっています。
なので合成音声やソフトウェアトークが好きな人は開発者としてそういった分野を支えることができる、というのは嬉しいことでモチベーションにも繋がりやすいかなと思います。
最後に
VOICEVOXはトークだけではなく2024年4月にソング機能も実装され、現在はそのソング機能周りの開発が活発に動いている印象です。
また先日行われたずんホラ2のクラウドファンディングで東北ずん子・きりたん・イタコ、そしてあんこもんの4名がVOICEVOX参入決定(すごい!!!)など、VOICEVOXは今後も利用者がどんどん増えていくことが予想される熱いプロダクトなんじゃないかなと思っています。
- OSSに貢献してみたいけど、英語のOSSはハードルが高い
- 音声合成がどのような技術で行われているか興味がある、覗いてみたい
- VOICEVOXやソフトウェアトークが好きだからなんか貢献してみたい!
といった方、ぜひVOICEVOXに貢献してみてはいかがでしょうか?
Discussion