[pulseaudio-discuss] Server-side corking
tanu.kaskinen at intel.com
Tue Apr 30 04:05:46 PDT 2013
Tizen has a patch that makes it possible to cork streams from the
server side. So far only applications have been allowed to cork streams
(it has been possible to cork streams also from the server side, but
that would cause conflicts if both applications and the server want to
cork and uncork the same streams).
I'm not familiar with the use case that has inspired the patch (Jaska or
Janos, it would be nice if you could explain the use case), but in
general server-side corking sounds sensible to me. The particular
implementation of the patch doesn't look so good to me, though: it just
adds one boolean to pa_sink_input for any server-side corking (the
feature doesn't seem to have been added to source outputs at all). There
may be multiple modules doing corking, so having just one boolean will
still be prone to conflicts.
I propose that we add a hashmap/list/whatever for cork requests, so that
there can be any number of simultaneous requests for one stream, and the
stream will stay corked as long as there is at least one request. When a
client requests corking, a cork request object will be created and
associated with the client, and the cork request object will be removed
when the client request uncorking. Similarly, modules would be able to
create and manage their own cork request objects.
Comments would be very welcome. If there is no opposition, this feature
will probably implemented sooner or later (I doubt that Tizen wants to
carry that patch forever).
Intel Finland Oy
Registered Address: PL 281, 00181 Helsinki
Business Identity Code: 0357606 - 4
Domiciled in Helsinki
This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.
More information about the pulseaudio-discuss