Featured image of the post

【音声とテキストの変換を効率的に行う】 live trancer | 2024年度winc夏合宿ハッカソン

プロダクトの概要

Real-Time Speak, Convert, Express

話し、変換し、伝える—すべてが瞬時に。新しいビジネスから日常体験を今すぐ。
LiveTrancerは、音声とテキストの変換を効率的に行うツールです。主に以下の3つの機能を提供します:

  • STT(Speech-to-Text):音声をリアルタイムでテキストに変換
  • テキスト最適化:変換されたテキストを自動的に整形・改善
  • TTS(Text-to-Speech):最適化されたテキストを音声に変換

これらの機能を其々導入可能な上に、音声コミュニケーションの質を向上させ、様々な分野での活用が期待できます。例えば、会議の議事録作成、多言語コミュニケーション支援、コンテンツ制作の効率化などに役立ちます。
また、STSとしても導入することができます。

Image in a image block

Image in a image block

Image in a image block

Image in a image block
Image in a image block
Image in a image block
Image in a image block
Image in a image block
Image in a image block
Image in a image block
Image in a image block
Image in a image block

プロダクトのリンク

(24/10/15 現在: 一時的にサイトを非公開にしています)

GitHubのリンク

使用技術

・フロントエンド: Next.js TypeScript

・バックエンド: TypeScript Python Flask

・音声処理: Google STT Google TTS

・リアルタイム音声通信: Web Socket

・音声加工 voicevox

・テキスト加工 ChatGPT 4o-mni or ELYZA

・データ通信 WebSocket

・仮想コンテナ Docker

・デプロイ: AWS

サービス一覧

・EC2、ECS、ECR、Route 53、VPC、CM、CF

工夫した点

音声送信、STT、テキスト加工、TTSをそれぞれ異なる環境、プログラミング言語で開発したことによって、拡張性を持ったアプリになるように設計。

インフラにおいても、拡張性を考慮し、EC2単体を使用するのではなく、Dockerを併用し、ECS、ECRを使い、将来的にマイクロサービス化を目的とした運用を可能に設計。

今回のハッカソンで新しく学べたこと

  • Next.jsで初めて実装したこと。
  • Flaskを初めて使用したこと。
  • API依存のSTT, TTS機能を初めて実装したこと。
  • WebSocketの導入が、Next.jsとのRouter関連の問題と複雑になっていること。
  • ECS、ECRを初めて導入したこと。
  • EC2のバカみたいに金がかかるコスト問題。