datarhei-dragonfork-core/restream
Zac Gaetano 46531bb479 feat(restream): add ProcessHooks for WebRTC subsystem integration
Adds a pair of lifecycle callbacks the app/webrtc subsystem installs
via SetHooks:

- OnStart fires synchronously just before ffmpeg.Start(). It receives
  the task config and may return []ConfigIO extras to append to the
  output list. When extras are appended, startProcess rebuilds the
  FFmpeg command and the underlying process.Process before starting.
  A non-nil error aborts the start.

- OnStop fires synchronously just after ffmpeg.Stop() so subsystems
  can tear down per-process state.

Hooks run with the restream write lock held; they must not call back
into Restreamer methods or they will deadlock. This is the pattern
app/webrtc uses to inject per-process RTP output legs without having
to reach into restream internals from outside.
2026-04-17 09:57:14 -04:00
..
app feat(restream): add ConfigWebRTC per-process field 2026-04-17 09:50:28 -04:00
fs Fix tests 2023-04-26 09:50:09 +02:00
replace Fix placeholder parsing 2024-03-14 12:03:04 +01:00
store Use abstract filesystem for stores 2023-02-01 16:09:20 +01:00
restream.go feat(restream): add ProcessHooks for WebRTC subsystem integration 2026-04-17 09:57:14 -04:00
restream_test.go Fix not propagating process limits 2023-04-26 09:49:28 +02:00