Plugin: ReadAloud TTS (published as livekit-plugins-readaloud); in-tree PR or external package?
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 初心者へのやさしさ
- 18/100
調査の方向性
The open question is whether a third-party TTS plugin belongs in the repository or stays external, so the first step is a maintainer answer, not code. If the answer is in-tree, read CONTRIBUTING.md and an existing plugin under livekit-plugins/ for layout, then check the tts.TTS and SynthesizeStream interfaces the plugin implements. Done is a recorded decision on placement, plus a PR only if maintainers accept it.
索引モデルが issue の本文から書いたものです。
説明
Feature Type
Nice to have
Feature Description
I maintain ReadAloud (https://readaloudai.org), a streaming text-to-speech API aimed at voice agents and phone calls (Piper voices, 8 kHz output). I wrote a TTS plugin for livekit-agents and published it as a separate package:
- PyPI: https://pypi.org/project/livekit-plugins-readaloud/
- Source: https://github.com/tsushanth/livekit-plugins-readaloud (MIT)
It implements tts.TTS with synthesize() and a sentence-level SynthesizeStream. Closing a stream closes the HTTP connection so generation stops, capacity responses (503/429) surface as a retryable APIStatusError, and output can be 24, 16 or 8 kHz. It has no aligned transcripts, because the API returns no word timestamps.
Question: would you prefer this as an in-tree plugin (a PR adding livekit-plugins/livekit-plugins-readaloud following CONTRIBUTING.md, and I would sign the CLA), or should it stay an external package? If external, is there a place in the docs where community plugins are listed? I'm happy to follow whichever you prefer, and happy to hear that neither fits.
What has and has not been tested: 12 unit tests against a fake of the HTTP protocol, and direct synthesize() and stream() calls against the live API with livekit-agents 1.8.5. I have not yet run it inside a real LiveKit room or agent job, and I would do that before opening any PR.
Workarounds / Alternatives
Install the external package (pip install livekit-plugins-readaloud) and pass readaloud.TTS(...) to AgentSession.
Additional Context
The repo has a single-file example (examples/readaloud_tts_to_wav.py) that needs only a ReadAloud API key, plus a changelog. I work for the company that provides the service, as the README states.
- 主要言語
- Python
- スター
- 14.6k
- フォーク
- 3.9k
- 平均マージ
- 2日 23時間
- マージ済み PR(30日)
- 177
環境構築
このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
livekit/agents のほかの issue
-
Assistant markup is stripped from chat history when expressive mode is off対応中かも @ShivamSharma43 が 6 日前に担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
メンテナーはふだん 1 日以内に返信
-
docs: openai.LLM vs openai.responses.LLM for HTTP OpenAI-compat hosts再び着手できるかも @AbarnaaSree が 46 日前に担当しましたが、オープン中のプルリクエストはありません。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
livekit/agents#7022 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
Tool argument errors put the argument values in the log message body, outside `lk.pii.*`対応中かも @Li-john1021 が今日担当しました。 オープン
難易度 3/5 半日 初心者へのやさしさ 25/100
livekit/agents#7801 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
Google Realtime (Vertex AI): update_instructions() appends a model turn instead of replacing the system instruction対応中かも @Li-john1021 が今日担当しました。 オープンbug
難易度 2/5 1〜3時間 初心者へのやさしさ 25/100
livekit/agents#7785 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
elevenlabs: text-to-dialogue (v3/v4) alignment timestamps are chunk-relative, breaking synced transcripts対応中かも @satheeshk50 が 1 日前に担当しました。 オープン
難易度 3/5 1〜2日 初心者へのやさしさ 58/100
livekit/agents#7773 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
似ている issue
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
Deltares/imod-python#1940 ·
メンテナーはふだん 1 日以内に返信
-
effort: low prio: low ready
難易度 1/5 1時間未満 初心者へのやさしさ 82/100
digitalfabrik/integreat-cms#4621 ·
メンテナーはふだん 5 日以内に返信
-
難易度 1/5 1時間未満 初心者へのやさしさ 88/100
ioos/compliance-checker#1375 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
メンテナーはふだん 1 日以内に返信
-
netbox status: backlog topic: testing type: housekeeping
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
netbox-community/netbox#23395 ·
メンテナーはふだん 1 日以内に返信