We need to resume audio devices even for streams that are created in
corked stat, so that the latency ranges of the audio device are known
during the initial latency negotiation. If we don't the latency
negotiation will be based on placeholder data and changed later on which
clients do not expect.
This should fix issues with Skype.
https://bugzilla.redhat.com/show_bug.cgi?id=554929
pa_assert(data);
pa_assert(u);
- if (data->flags & PA_SINK_INPUT_START_CORKED)
- return PA_HOOK_OK;
+ /* We need to resume the audio device here even for
+ * PA_SINK_INPUT_START_CORKED, since we need the device parameters
+ * to be fully available while the stream is set up. */
if ((d = pa_hashmap_get(u->device_infos, data->sink)))
resume(d);
pa_assert(data);
pa_assert(u);
- if (data->flags & PA_SOURCE_OUTPUT_START_CORKED)
- return PA_HOOK_OK;
-
if (data->source->monitor_of)
d = pa_hashmap_get(u->device_infos, data->source->monitor_of);
else