準備をして、やりたいことを正しく行う (つまり、フロー制御を行う) ことは、高度なトピックです。私はあなたにいくつかのヒントを与えようとします。これを読むことにも興味があるかもしれません。
WebSocketProtocol.sendMessage
AutobahnPython API の一部です。正確には、メッセージベースの基本 APIの一部です。上記のストリーミングサーバーは受信に高度なAPIを使用するのに対し、送信には基本的なAPIを使用します(送信データが小さく、フロー制御の必要がないため)
さて、あなたの場合、Web カメラは「大量データ」プロデューサーです。JSからサーバーへの送信をフロー制御する必要があります。cam からデータを取得するのと同じ速さで JS から WebSocket メッセージを送信すると、アップストリーム接続が追いつかなくなり、ブラウザのメモリが不足する可能性があります。bufferedAmount
JS WebSocket API の一部についてお読みください。
サーバーに流れ込むデータだけを消費したい場合は、上記の AutobahnPython ストリーミング サーバーの例が出発点として適しています。他の WebSocket フレームワークは、メッセージを提供するまで、最初に完全なメッセージをバッファリングします。
サーバーによって受信されたデータを他の接続されたクライアントに再配布する場合は、サーバーの発信レッグでもフロー制御が必要になります。そして、送信用の高度な APIも必要になります。リファレンスまたはストリーミング (プロデューサー) クライアントの例を参照してください。サーバー内で実行するようにコードを調整できます。
何よりもあなたにとって意味をなさない場合..それは重要なことです。Autobahn フォーラムへの最初のリンクを読んでみてください。また、フロー制御についても詳しく説明しています。また、JS WebSocket API には、アプリ レベルで独自のスキームを発明するためにフォールバックすることなく、この種のフロー制御を行うための限られた機構しかないため、自明ではありません。良い。とにかく、それが少し役立つことを願っています。