[pulseaudio-discuss] understanding PA cork/uncorking scenarios

Colin Guthrie gmane at colin.guthr.ie
Thu Jun 30 08:57:31 PDT 2011

'Twas brillig, and Himanshu Chug at 30/06/11 16:33 did gyre and gimble:
> which means that as you mention for "PA_STREAM_START_CORKED flag...
> streams, when connecting can say "Please start me corked"
> have this problem always and this is a bug in the code. ?? which might
> needs to be handle somehow..gracefully.
> any comments are welcome?

Yup, that's what I suspected. Thanks for confirming.... I'm not really
sure how best to handle this.

Anyone got any bright ideas?

The only idea I have is for clients to keep count of their cork and
uncork requests and only call pa_stream_cork(s, 0, NULL, NULL) when that
count reaches 0.

i.e. if the client uses START_CORKED then it's up to the client to
uncork at some point (at least I think it's the clients responsibility -
I don't find any code to uncork automatically anywhere...). Therefore,
that client should also listen for the cork and uncork events and only
actually call it's initial uncork if it's received an equal number of
cork/uncork requests.

I'm not sure we can fix this problem at the server side without a bit of
a rethink of "corking" and perhaps classifying an initial cork
differently to others... but that seems messy.



Colin Guthrie

Day Job:
  Tribalogic Limited [http://www.tribalogic.net/]
Open Source:
  Mageia Contributor [http://www.mageia.org/]
  PulseAudio Hacker [http://www.pulseaudio.org/]
  Trac Hacker [http://trac.edgewall.org/]

More information about the pulseaudio-discuss mailing list