GStreamer API over RPC: does it make sense?

Fedor Lyakhov fedor.lyakhov at gmail.com
Wed Nov 6 09:28:39 PST 2013


On Wed, Nov 6, 2013 at 3:34 PM, Sebastian Dröge
<sebastian at centricular.com> wrote:
> On Di, 2013-11-05 at 22:28 +0400, Fedor Lyakhov wrote:
>> Hi Sebastian,
>>
>> Thanks for your comments! Very encouraging for me.
>> Are you talking about SoC 2014? Where can I look at the status of this
>> project? Is it awaiting approval from Google now?
>
> It was just an idea I had for 2013 and put on the GStreamer GSoC wiki
> page. Nobody was interested in doing that :) Also highly irrelevant for
> your problem AFAIU.
>
>> As for what we really need for Spice - I'm not sure I understand your
>> idea correctly. There are 3 major media-related use cases we want to
>> optimize:
>> * playback of a local media resource (local - at VM); this is
>> addressed at http://www.spice-space.org/page/Features/CodecPassthrough
>> * playback of a remote media resource
>> * IP telephony
>> Last two are addressed at
>> http://www.spice-space.org/page/Features/MediaRedirection
>> [...]
>
> A complete design for this is not really trivial and you would need to
> consider all your requirements and constraints carefully. So just some
> hints here what you could do.
>
> One thing you could do is to make GStreamer audio/video sinks that
> accept compressed data (+ some control data) and send that over the
> Spice channel. And on the other side these are then decoded and put in
> the right place. Of course will only work for GStreamer applications
> that use those sinks (well, and playbin if you do it right). Also the
> streams would be demuxed and parsed before sent over the Spice channel.
>
> The same could be done on the input side with custom sources.
>
>
> Proxying the complete GStreamer API doesn't seem like it would solve
> your specific problem, other than making everything more complicated :)
>

Ok, this sounds like a good approach for Codec Pass-through feature!
But I still don't understand why do you think remoting GStreamer API
cannot help with Media Redirection?

I want to understand your point - probably it can save quite some of
my time in case I'd be trying to implement a wrong thing in vain...
Looks like while I'm lacking GStreamer knowledge, you're missing an
important part as well: for Media Redirection there is another
requirement - media streams must not pass through virtual machine. It
is a must, if it isn't met this isn't going to work for IP telephony
(I'm coming from that field actually...). So we cannot have 2
GStreamer instances (at virtual machine and at client) and send a
stream between them over Spice. We can only have single GStreamer at
the client side - and we need to handle in/out streams of various
kinds (e.g. G.711 RTP for audio IP call). At the same time, the logic
of where the stream needs to be sent, or when it needs to be
paused/resumed - it all stays at the application running at the
virtual machine...


> --
> Sebastian Dröge <sebastian at centricular.com>
> Centricular Ltd - http://www.centricular.com
> Expertise, Straight from the Source
>
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>



-- 
Best regards,
Fedor


More information about the gstreamer-devel mailing list