summaryrefslogtreecommitdiffstats
path: root/ext/pulse/pulsesink.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext/pulse/pulsesink.c')
-rw-r--r--ext/pulse/pulsesink.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/ext/pulse/pulsesink.c b/ext/pulse/pulsesink.c
index 0275d342..9743662f 100644
--- a/ext/pulse/pulsesink.c
+++ b/ext/pulse/pulsesink.c
@@ -1516,9 +1516,11 @@ gst_pulsesink_sink_input_info_cb (pa_context * c, const pa_sink_input_info * i,
if (!pbuf->stream)
goto done;
- g_assert (i->index == pa_stream_get_index (pbuf->stream));
-
- psink->volume = pa_sw_volume_to_linear (pa_cvolume_max (&i->volume));
+ /* If the index doesn't match our current stream,
+ * it implies we just recreated the stream (caps change)
+ */
+ if (i->index == pa_stream_get_index (pbuf->stream))
+ psink->volume = pa_sw_volume_to_linear (pa_cvolume_max (&i->volume));
done:
pa_threaded_mainloop_signal (psink->mainloop, 0);