perf: skip stream socket fan-out work when no consumers connected

The stream socket is intended to be served unconditionally for every
monitor, so the idle path must cost nothing:

- SendMedia returns after counting the sequence when no clients are
  connected: no packet reference, no message allocation, no wake.
  Keyframes are still cached (one refcounted clone per GOP) so the
  first consumer to connect renders immediately.
- The poll loop blocks indefinitely instead of waking 10x/s when no
  clients are connected; it wakes on connection or shutdown.

Tests: existing [stream_socket] suite covers both paths (the late-joiner
test exercises keyframe caching with zero clients). Full suite: 98/98
pass via ctest.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Internal Server Error - Gitea: Git with a cup of tea
500 Internal Server Error

Gitea Version: 1.28.0+dev-477-g8b6ad49a5f