diff --git a/src/pipewire/stream.c b/src/pipewire/stream.c index c922a3e3a..c9c000177 100644 --- a/src/pipewire/stream.c +++ b/src/pipewire/stream.c @@ -557,14 +557,10 @@ static int impl_send_command(void *object, const struct spa_command *command) stream_set_state(stream, PW_STREAM_STATE_STREAMING, NULL); } break; - case SPA_NODE_COMMAND_ParamBegin: - case SPA_NODE_COMMAND_ParamEnd: - break; default: - pw_log_warn("%p: unhandled node command %d", stream, - SPA_NODE_COMMAND_ID(command)); break; } + pw_stream_emit_command(stream, command); return 0; } diff --git a/src/pipewire/stream.h b/src/pipewire/stream.h index d56563ece..181c3211f 100644 --- a/src/pipewire/stream.h +++ b/src/pipewire/stream.h @@ -209,7 +209,7 @@ struct pw_time { /** Events for a stream. These events are always called from the mainloop * unless explicitly documented otherwise. */ struct pw_stream_events { -#define PW_VERSION_STREAM_EVENTS 0 +#define PW_VERSION_STREAM_EVENTS 1 uint32_t version; void (*destroy) (void *data); @@ -238,6 +238,9 @@ struct pw_stream_events { /** The stream is drained */ void (*drained) (void *data); + + /** A command notify, Since 0.3.39:1 */ + void (*command) (void *data, const struct spa_command *command); }; /** Convert a stream state to a readable string */