[Spice-devel] [PATCH 0/11] Add GStreamer and VP8 support

Fabio Fantoni fantonifabio at tiscali.it
Thu May 28 07:49:53 PDT 2015


Il 28/05/2015 16:17, Francois Gouget ha scritto:
> On Tue, 26 May 2015, Fabio Fantoni wrote:
> [...]
>> After din't show gstreamer warning anymore but still have image freeze
>> and also spice-gtk crash after open video fullscreen, here the full gdb
>> datas:
>> http://pastebin.com/idTkZLh0
> It looks like the crash happened when trying to access the st->out_frame 
> buffer that was set up by stream_gst_data() in the client.
>
> I don't know why that would be the case: as far as I can tell that 
> pointer is either valid or NULL; even if we return early from 
> push_frame() or pull_frame().
>
> It may not be related to the issue you've run into but the patch below 
> should help quite a bit if you try running the client more than a minute 
> or two:
>
> diff --git a/gtk/channel-display-gst.c b/gtk/channel-display-gst.c
> index b880ce4..9da078a 100644
> --- a/gtk/channel-display-gst.c
> +++ b/gtk/channel-display-gst.c
> @@ -221,6 +221,7 @@ static void pull_frame(display_stream *st)
>  
>          // TODO seems like poor memory management
>          if (gst_memory_map(memory, &mem_info, GST_MAP_READ)) {
> +            g_free(st->out_frame);
>              st->out_frame = g_malloc0(mem_info.size);
>              memcpy(st->out_frame, mem_info.data, mem_info.size);
>
> I also have a patch that avoids copying the out_frame buffer but given 
> the low CPU usage of the client that should not be an issue.
>
>
>> After I tried with gstreamer using ffmpeg, vp8 doesn't crashed, probably
>> was problem of gstreamer0.10-plugins-bad but "image freeze" problem remain
> When does the freeze happen? A short freeze is normal during the 
> transition from the regular transport to the video streaming but that 
> happens in the mjpeg case too. Is the freeze temporary?
>
>
> [...]
>> About vp8 image freeze here some seconds of gst log debug on spice-gtk
>> when problem happen: http://pastebin.com/PP2R43Yf
> Nothing jumped at me in this log.
>
>
>> Using spice:vp8 seems only have low performance.
> In my experience the VP8 encoder saturates a core which is why it is not 
> smooth. When running a test pipeline through gst-laucnh I'm able to 
> solve that by playing with vp8enc's speed and threads parameters but for 
> some reason these have no effect in Spice.
>
> gst-launch videotestsrc ! video/x-raw-rgb,width=1024,height=768 ! \
>            ffmpegcolorspace ! vp8enc speed=2 threads=4 ! \
>            vp8dec ! ffmpegcolorspace ! fpsdisplaysink
>
>
>

Thanks for reply, I'm preparing spice-gtk with vp8 patches armhf for
test it on arm thin client (for example raspberry 2), I want try to use
gst-omx for hardware decoding of mjpeg and vp8, can I simply build and
install gst-omx instead of gst-ffmpeg or a change in spice-gtk is needed
for use gst-omx?

Tomorrow I'll do other tests (including updating spice-server patches)
and I'll try to understand what can be the temp. image freeze and other
important performance problem.

Thanks for any reply and sorry for my bad english.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 4297 bytes
Desc: Firma crittografica S/MIME
URL: <http://lists.freedesktop.org/archives/spice-devel/attachments/20150528/b17790d6/attachment.bin>


More information about the Spice-devel mailing list