同期動画視聴とは?

同期動画視聴(「一緒に視聴」または「共同視聴」とも呼ばれます)は、複数のリモート視聴者に対して動画プレイヤーを同じ状態に保つ技術です。1人がプレイ、一時停止、または動画内の別の位置にシークすると、他のすべての参加者のプレイヤーが更新されて一致します。これは、リアルタイムメッセージングチャネル(通常はWebSocket)を通じて再生イベントをブロードキャストすることで実現され、すべてのクライアントがミリ秒以内に同じコマンドを受け取って適用します。

ツールの説明

YouTube Watch Togetherを使用すると、共有ルーム内の他のユーザーと同期してYouTube動画を視聴できます。名前付きルームを作成し、ルームURLを共有して他のユーザーを招待し、YouTube動画を読み込んで、一緒に再生します。すべてのプレイ、一時停止、シークは自動的にすべての参加者に同期されます。このツールには、別のアプリに切り替えることなく、動画についてリアルタイムで議論できるライブチャットも含まれています。

機能

  • リアルタイム動画同期 — プレイ、一時停止、シークイベントはWebSocket経由で数秒以内にすべてのルームメンバーにブロードキャストされ、全員が同じ位置に保たれます。
  • 共有可能なルームリンク — ルームURLはブラウザのアドレスバーで自動的に更新されるため、直接コピーして共有できます。
  • 統合チャット — 視聴中にテキストメッセージをルーム内のすべてのユーザーに送信します。

動作方法

ルームは専用のソケットサーバーで管理されます。ルームに参加または作成すると、WebSocket接続が確立されます。5秒ごとに、ホストの再生位置がサーバーに送信され、すべてのメンバーに再配信されます。メンバーの再生時間が参照位置から3秒以上ずれている場合、そのプレイヤーは自動的に正しい時間にシークします。動画読み込みイベント(新しいURLが入力された場合)も同期されるため、すべてのメンバーが同時に同じ動画に切り替わります。

ヒント

  • 各参加者には参加時にランダムなユーザー名が割り当てられ、ユーザーリストとチャットメッセージに表示されます。
  • 1つのルームで一度に読み込める動画は1つだけです。参加者が新しいYouTube URLを入力すると、ルームはすべてのユーザーに対してその動画に切り替わります。
  • ルームURLには?room=クエリパラメータが含まれます。このリンクを開いたユーザーは自動的に同じルームに参加します。
  • 接続が切断された場合は、ページを再度読み込んで同じルームIDを使用してルームに再参加し、視聴を続けます。