[LAD] Communicating between python UI and C++ engine for real time audio?

Emanuel Rumpf xbran at web.de
Fri Nov 4 17:16:28 UTC 2011


2011/11/3 Paul Davis <paul at linuxaudiosystems.com>:
> On Thu, Nov 3, 2011 at 4:02 PM, Harry van Haaren <harryhaaren at gmail.com> wrote:
>> Just wrap two ringbuffers into a single class, and then have two set / get
>> functions.
>>
>> Basically one "RtQueue" instance can pass messages back and forth between
>> two threads lock free.
>> I'd like to improve it so that one get / set method is there, and its
>> thread-aware so it will automatically push / pull to the right ringbuffer.
>> But that's a touch hard for me as I'm using GLib threads and finding which
>> thread is running is something i can't do yet :D
>
> this approach requires that all your data structures can be
> representable as POD (plain old data) and be effectively and easily
> de/serialized from/to a bytestream.
>
> this can be quite restrictive. linked lists, for example ...
>

While this is restrictive, in the way you mention, I think it's a
welcome simplification
( compared to implementing a real-time-capable-linked-list + other
rt-structures ),
if your use-case doesn't require direct calls to the list (for any reason),
then you could request insert/remove/update operations through the
rt-ring-buffer.

-- 
E.R.



More information about the Linux-audio-dev mailing list