sink-input: Add a format-lost event

This event is emitted if the sink-input could not be moved to a new sink
because it doesn't support the format of the sink-input. Clients can
reconnect their stream with a different format if they wish or
gracefully exit.
This commit is contained in:
Arun Raghavan 2011-03-28 08:46:40 +05:30
parent cb3dcb14f8
commit 53091cc5f0
2 changed files with 9 additions and 1 deletions

View file

@ -1594,7 +1594,8 @@ int pa_sink_input_finish_move(pa_sink_input *i, pa_sink *dest, pa_bool_t save) {
return -PA_ERR_NOTSUPPORTED;
if (pa_sink_input_is_passthrough(i) && !pa_sink_check_format(dest, i->format)) {
/* FIXME: Fire a message here so the client can renegotiate */
pa_log_debug("New sink doesn't support stream format, sending format-changed and killing");
pa_sink_input_send_event(i, PA_STREAM_EVENT_FORMAT_LOST, NULL);
return -PA_ERR_NOTSUPPORTED;
}