Hackathon

進捗スナップショット

ステータス: 追い込み中です。しばらくの間、下の Release Notes を最新情報として参照してください。

最終更新: 2026-02-20

Major Release

  • 配信の安定性と音声体験を優先し、19FM / Shared の運用品質を引き上げました。

今日Ship

  • 19FM側の配信画面で発生していた左下クラッシュを解消し、アバター領域の表示安定性を改善。
  • 配信側の構成を整理し、コメント読み上げが止まるケースからの復旧性を強化。
  • 日英の読み上げ切替を維持したまま、発話頻度を調整して過密なテロップ/反応を抑制。
  • Hackathonページの公開向け進捗を更新し、最新の成果を外部共有しやすい形に整理。

  • 英語音声の自然さ(発音・抑揚)を継続改善する。
  • 読み上げ完了ベースの同期制御を導入し、テロップと音声のずれをさらに減らす。
  • 19FM と Shared の運用差分をさらに小さくし、再発時の切り分けを高速化する。

Release Notes

最新

配信安定化アップデート(19FM / Shared)

2026-02-20

実装済み

  • 19FM側の配信画面で発生していた左下クラッシュを解消し、アバター領域の表示安定性を改善。
  • 配信側の構成を整理し、コメント読み上げが止まるケースからの復旧性を強化。
  • 日英の読み上げ切替を維持したまま、発話頻度を調整して過密なテロップ/反応を抑制。
  • Hackathonページの公開向け進捗を更新し、最新の成果を外部共有しやすい形に整理。

メモ

  • 一文内の日英混在が起きにくいよう、生成ガードと運用ルールの調整を継続中。
  • プレイヤー側の遅延により、修正反映が数秒〜十数秒遅れて見える場合があります。

  • 英語音声の自然さ(発音・抑揚)を継続改善する。
  • 読み上げ完了ベースの同期制御を導入し、テロップと音声のずれをさらに減らす。
  • 19FM と Shared の運用差分をさらに小さくし、再発時の切り分けを高速化する。

リンク

前回Hackathon更新からの差分(Shared復旧 + 多言語TTS)2026-02-17

実装済み

  • 前回差分: Shared ステーションの本番導線を復旧し、`/ch/shared` を再有効化。
  • コメント読み上げを発話テキストの言語で自動分岐(日本語: Style-Bert-VITS2 / 英語: OpenAI互換TTS[Kokoro])。
  • shared-station の実行設定を更新し、日英自動TTS切替の運用設定を追加。
  • TTS連携のフェイルセーフ経路を追加し、互換エンドポイント利用時の停止リスクを低減。

メモ

  • 英語品質は音声モデル依存。bridge が日本語生成を返すケースでは日本語ルートが選ばれる。
  • shared-station コンテナは再ビルド・再起動済み。

  • 19FM/main 側にも同じ日英ルーティングを段階適用する。
  • bridge 多重起動の運用整理と runbook 更新を行う。
  • 英語voice(af_heart 以外)のA/B確認を進める。

リンク

BGM SOUND ONLYにジャンル背景を追加2026-02-15

実装済み

  • LLM + インタラクティブなチャットUIを備えた AI VTuber を公開し、視聴者との対話体験を提供開始。
  • BGM再生中にジャンル別背景画像(ambient / chill / cinematic / dark / dnb / edm / house / kawaii / pop / retro / rock / study / synthwave)を表示するよう更新。
  • ラジオインジケーター周辺に暗めオーバーレイとぼかしを追加し、テキスト可読性を改善。
  • SOUND ONLY画面の見た目を、再生中ジャンルが直感的に伝わるUIへ調整。

メモ

  • 背景画像はジャンルごとに静的アセットとして追加。
  • 既存のBGM再生ロジックには影響を与えず、表示レイヤーのみ変更。

  • 背景画像の読み込み最適化(先読み・遅延読み込み)を検証。
  • ジャンル別UIの視認性をモバイル実機で追加確認。

リンク

運用検証日(本番反映なし)2026-02-14

実装済み

  • 本番反映を伴う新規コミットはなし。
  • 2/13 に導入したBGM基盤・ステーション拡張の動作確認と運用確認を実施。

メモ

  • 日次運用ログ上の確認日として記録。

  • BGM SOUND ONLYの視覚改善(ジャンル背景)を翌日リリース。

リンク

BGM基盤のR2移行とステーション拡張2026-02-13

実装済み

  • Mubert API依存を廃止し、Cloudflare R2 + manifest駆動のロイヤリティフリーBGMプレイヤーへ移行。
  • BGMマニフェストを13ジャンル・1,295曲まで拡張(Pixabay音源)。
  • req! からBGMプリセットへ接続するムードマッピングを導入し、ステーション別オーディオ設定を追加。
  • 新規4ステーション(mimi-chan / devin-kun / aivtuber-casino / kafika)を追加し、ステーション別HLSルーティングを導入。
  • Mubert統合関連のエンジニアリングチケット(ENG-101〜106)を docs/tickets に追加。

メモ

  • ローカル設定(音量・閾値)を station-scoped localStorage へ移行し、既存キー互換を維持。
  • 複数ステーション配信を同時運用しやすいルーティング設定へ更新。

  • BGMマニフェスト更新(取得・検証・R2反映)の自動化を進める。
  • ステーション追加後の回帰確認(req! / HLS / 保存設定)を継続する。

リンク

HLS黒画面対策と監視通知の強化2026-02-12

実装済み

  • HLSが不安定なときに黒画面になる問題を改善し、YouTubeフォールバック挙動を強化。
  • HLS再試行上限到達時にプレイヤーを自動で切替える回復経路を追加。
  • serverTimestampを使ったserver/client時刻同期を導入し、Radioサイクルの同期精度を改善。
  • monitor-prodに4時間ごとの健全性通知とDiscord mentionを追加。

メモ

  • broadcaster再起動時にffmpegも確実に巻き取るようにし、復旧ループの信頼性を改善。

  • 監視アラートをチャネル単位の可観測性へ拡張する。
  • 再生失敗時のフォールバック導線をさらに短縮する。

リンク

19FMステーション追加と配信監視の導入2026-02-11

実装済み

  • 19FMステーション設定を追加し、TvPageClientでvirtual station運用に対応。
  • broadcaster watchdog(フリーズ検知 + 定期再起動)を導入。
  • stream health監視(healthz + HLS manifest検証)とDiscord通知を追加。
  • nginxに `/healthz/stream` を追加し、m3u8存在チェックを実装。

メモ

  • エラーページ/Not Found/TVのロゴ導線もあわせてホーム戻りを統一。

  • 運用runbookと監視しきい値を実運用に合わせて調整する。
  • ステーション追加時の監視テンプレート化を進める。

リンク

HLS配信パイプライン実装とTV再生安定化2026-02-10

実装済み

  • /ch ルート向けに HlsStreamPlayer を導入し、配信パイプラインを改善。
  • HLS視聴時のオーバーレイ表示ロジックを整理し、broadcast表示との重複を解消。
  • 配信画面の白線アーティファクトやレイアウト崩れを修正(背景/境界/コンテナ調整)。
  • HLS再試行・stalled検知・iOS Safari対策を追加し、/ch/19fm のHLS共有に対応。
  • aituber_v0 の動画プールを拡張し、broadcaster再起動失敗要因を除去。
  • ホームのチャンネル導線を単一CTA(Open 19FM)に統合。

メモ

  • ops/broadcast-relay の設定(nginx / docker-compose / wrangler)も同日に継続調整。

  • チャネル追加時のHLS有効化手順を標準化する。
  • 初回再生開始時間と再接続レイテンシを継続的に短縮する。

リンク

Broadcastルート公開と中継基盤PoC2026-02-09

実装済み

  • /broadcast/[slug] ルートを追加し、配信用UIの表示切替トグルを実装。
  • SRS + nginx + headless Chromium を使った broadcast-relay PoC を追加。
  • Hackathon KPI表示のプレースホルダーを0埋めし、指標ラベルを更新。

メモ

  • 翌日以降の /ch 向けHLS展開と安定化作業の土台をこの日に構築。

  • /ch 視聴ルートへのHLS組み込みとフォールバック動線を強化する。
  • 配信キャプチャ品質と可用性監視の運用手順を固める。

リンク

VRM 3Dアバター・PNGTuberホスト・TOUHOU Music Only・トップページ改善2026-02-08

実装済み

  • AITuber v0 に VRM 3Dアバターを導入(笑顔・首振りアニメーション付き)。VRMモデルを 21MB → 9.6MB に最適化。
  • TOUHOU チャンネルに PNGTuber ホスト(仮)を追加。口パク・感情差分画像によるリアクション対応。
  • TOUHOU Music Only 専用ルート(/ch/touhou_music)を新設。
  • TOUHOU Music Only から他チャンネルへ戻った際にモードが持ち越される不具合を修正。
  • PartyKit ヘルスモニタリング・診断機能を追加(WebSocket接続状態の詳細ログ出力)。
  • PartyKit DJ bot ロジックスクリプトを追加。
  • トップページの文言を自然化・ローカライズ完全対応
  • KPI 草稿

メモ

  • VRM アバターは Three.js + @pixiv/three-vrm で描画。最終的にリアルタイム VRM 方式を採用(WebP プリレンダは試行後にリアルタイムへ戻した)。
  • VRM フレーミングはバストアップ固定、OrbitControls は除去して安定化。
  • 外部サービス障害時の切り分けフローを改善。
  • PNGTuber レイアウトは HostOverlay の `avatarLayout: 'pngtuber'` で切替。host_shameimaru プリセットを hostPresets.ts に追加。

  • VRM アバターの表情バリエーション拡充(BUY/SELL連動リアクション)。
  • TOUHOU PNGTuber と VRM ホストの挙動を並行で回帰確認。
  • monitor-prod を有効化し、Helius/PartyKit の早期障害検知を運用に組み込む。

リンク

Radio同期強化とTOUHOUチャンネル追加2026-02-07

実装済み

  • /hackathon の静的ページ化を維持したまま Cloudflare Workers で不安定要因(fs/path依存)を除去。
  • /shiplog と /decisions を認証なしで閲覧可能にし、Markdownソースへ安定リダイレクト。
  • AITUBER v0 / TOUHOU の Radio同期を強化(scheduler配信・再接続時の最新状態配布・channel別room分離)。
  • Radioサイクルを TALK → ON AIR → BREAK に統一し、TALK/BREAK中の動画再生レースを抑止。
  • req! 導線を改善し、Request received → Selecting... → Next(タイトル) 表示を追加。
  • TOUHOU チャンネル(/ch/touhou)を追加。YouTube 100本(6分以内)+ SoundCloud 2プレイリストを接続。

メモ

  • チャンネル切替ドロップダウン不具合(selectedPool反映漏れ)を修正。
  • 既存環境向けにDBマイグレーションを追加。
  • ローカルRealtime起動のポート揺れ対策として `pnpm dev:partykit`(port 1999固定)を追加。

  • 本番ステーション設定に touhou を反映し、/ch 導線での切替を確認。
  • Radio同期の回帰確認(2タブ/再接続/reqキュー)を継続。
  • TOUHOU プレイリストの品質を見ながらタグと選曲ルールを微調整。

リンク

TV安定化・モバイル改善・スモークテスト整備2026-02-06

実装済み

  • TVルーティングと再生同期を修正。
  • デモフローのスモークE2Eカバレッジを追加。
  • AITuberチップモーダルとステーションSFXプリセットを追加。
  • stagingの認証・チャット入力ルールとモバイルTV/コメントレイアウトを安定化。
  • 外部フォント依存を削除し、iOS入力ズーム挙動を改善。

メモ

  • Supabase DB型とクライアント側制約の整合も実施。
  • クリエイタープレイリストの再生時間を更新。

  • モバイルTV UXの安定化を継続。
  • ルーティング・再生同期周りの回帰テストを拡充。

リンク

Hackathonページ公開とステーションネットワーク更新2026-02-05

実装済み

  • /hackathon ページを追加。
  • /hackathon から SHIPLOG.md / DECISIONS.md への導線を追加。
  • トップページをステーションネットワーク前提の導線に最適化。
  • station request flow と AITuber v0 host overlay を追加。
  • コンテンツゲートとクリエイターチャンネル設定を追加。

メモ

  • staging関連修正、build-time env修正、PartyKit deploy script更新も実施。

  • トップからステーション導線の摩擦をさらに削減。
  • hackathon進捗の可視性を継続改善。

リンク

Footerとstaging基盤の更新2026-02-04

実装済み

  • global footer と /official ページを追加。
  • staging環境変数とアクセス制御を追加。
  • staging deployの環境分離を追加。
  • TV history と branding を更新。
  • リポジトリのメタデータとアイコンを追加。

メモ

  • この日はhackathon専用更新より、サイト基盤と環境整備が中心。

  • stagingフローのE2E検証を継続。
  • UIの一貫性改善を段階的に継続。

リンク

Musicモード再生バグ修正2026-02-03

実装済み

  • MusicモードでYouTube動画が再生される問題を修正。
  • タブ復帰時のMusicモードで不要な動画同期を停止。

メモ

  • この日は StreamPlayer 挙動の不具合修正に集中。

  • 非Musicモードでの再生回帰を監視。
  • TVモード挙動変更のテストカバレッジを継続。

リンク

TVヘッダーブランディング更新2026-02-02

実装済み

  • TVセクションヘッダーにロゴ画像を追加。

  • TV UIの段階的な改善を継続。
  • TV関連変更を日次Release Notesで継続記録。

リンク

KPI(スナップショット)

North Star(週次): 視聴発生Station数: 0
Focus(今週): 作成→公開到達率: 0%
視聴者DAU: 0
平均視聴時間: 0:00

定義(暫定): 視聴発生=再生10秒以上 / 作成→公開=共有可能状態(計測は順次自動化中) (最終更新: 2026-02-20)

Docs