RFC: impl-link: Send magic param on failed format negotiation
remote-node.c
currently does not seem to handle error state events,
making users like pipewiresrc
hang/timeout in certain situations like
a failed format negotiation. In case of pipewiresrc
this happens in
pw_thread_loop_timed_wait_full()
, waiting for a param_changed
event.
For certain use-cases this can be problematic, notably when trying multiple optimized Gstreamer pipelines, expecting the pipeline to fail fast if format negotiation fails.
Thus send a "magic" parameter that signals that format negotiation
failed and use it in pipewiresrc
.
Note: as the title says this is a RFC - suggestions for a cleaner solution, such as marshalling/communicating error states, are very welcome!
Closes #2935 (closed)
Needed for https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2597