[Video] ILM support for waylandsink query
Eugen Friedrich
friedrix at gmail.com
Mon Mar 27 19:39:55 UTC 2017
Hi Vikash,
i could not really find this out from the call stack but the problem
could be that the ilmClient api is not thread safe, and in upstream
direct after 1.11 release we decided to deprecated this,
so just remove the ilmClient calls and use wayland protocol directly
and you can continue to use the ilmCommon api this one is thread save.
Hope this helps,
Eugen
2017-03-27 10:35 GMT+02:00 Vikas Patil <vikasmpatil at gmail.com>:
> Hi All,
>
> Modifying the view port as follows solves the issue 1. However still not
> getting what could be the cause of segmentation fault with direct usage of
> ILM apis.
>
> //wl_viewport_set_destination (window->video_viewport, res.w, res.h);
> wl_viewport_set_destination (window->video_viewport, 800, 480);
>
> Thanks & Regards,
> Vikash
>
> On Fri, Mar 24, 2017 at 3:28 PM, Vikas Patil <vikasmpatil at gmail.com> wrote:
>>
>> Dear All,
>>
>> I am trying to add support for wayland-ivi-extension 1.11.0 to waylandsink
>> [1] (video sink plug-in from gstreamer1.0-plugins-bad package) for Jacinto6
>> SoC using following two methods.
>>
>> 1. Using ivi-application protocol similar to simple-egl.c (test from
>> weston)
>> - This works.
>> - Here is video size is 1280x720 and screen resolution is 800x480 then
>> only top left of video is visible. How should I fix this?
>>
>>
>> 2. Using ilmClient and ilmControl APIs directly.
>> - This do not work and gives segmentation fault with below call stack. I
>> have checked the calls and setup seems correct to me.
>> - I thought it might be wayland sink uses drm protocol to allocate buffers
>> which will be attached to created surfaces and tried to disable thatpath
>> and instead use SHM.
>> With this also the same behavior.
>>
>> Any inputs? Attached here the patch for wayland sink which implements ilm
>> support.
>>
>> Any inputs after looking at the call stack?
>>
>> #0 0xb6812928 in wl_proxy_marshal_constructor (proxy=0x150410,
>> opcode=opcode at entry=1, interface=0xb6827714 <wl_registry_interface>)
>> at ../wayland-1.11.0/src/wayland-client.c:729
>> #1 0xb6851e98 in wl_display_get_registry (wl_display=<optimized out>) at
>> /usr/include/wayland-client-protocol.h:957
>> #2 init_client () at
>> /usr/src/debug/wayland-ivi-extension/1.11.0-r1/git/ivi-layermanagement-api/ilmClient/src/ilm_client_wayland_platform.c:207
>> #3 get_client_instance () at
>> /usr/src/debug/wayland-ivi-extension/1.11.0-r1/git/ivi-layermanagement-api/ilmClient/src/ilm_client_wayland_platform.c:235
>> #4 0xb6852128 in wayland_surfaceCreate (nativehandle=3051387744,
>> width=<optimized out>, height=<optimized out>, pixelFormat=<optimized out>,
>> pSurfaceId=0xb688fe04 <ilmSurfaceId>)
>> at
>> /usr/src/debug/wayland-ivi-extension/1.11.0-r1/git/ivi-layermanagement-api/ilmClient/src/ilm_client_wayland_platform.c:273
>> #5 0xb687cb10 in create_ilm_surface (window=0xb5e05150, display=0x150410)
>> at ../../../git/ext/wayland/wlwindow.c:252
>> #6 gst_wl_window_new_internal (display=0x150410) at
>> ../../../git/ext/wayland/wlwindow.c:383
>> #7 0xb687d3b4 in gst_wl_window_new_toplevel (display=<optimized out>,
>> info=info at entry=0x14fff0) at ../../../git/ext/wayland/wlwindow.c:395
>> #8 0xb68787c0 in gst_wayland_sink_render (bsink=0x14fde8,
>> buffer=0xb5504b68) at ../../../git/ext/wayland/gstwaylandsink.c:658
>> #9 0xb691b134 in gst_base_sink_do_preroll () from
>> /usr/lib/libgstbase-1.0.so.0
>> Cannot access memory at address 0x0
>> #10 0x0014fde8 in ?? ()
>> Cannot access memory at address 0x0
>> Backtrace stopped: previous frame identical to this frame (corrupt stack?)
>>
>>
>> [1]
>> https://cgit.freedesktop.org/gstreamer/gst-plugins-bad/tree/ext/wayland?id=1.6.3
>>
>> Thanks you all in advance.
>>
>> Thanks & Regards,
>> Vikash
>
>
>
> _______________________________________________
> wayland-devel mailing list
> wayland-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/wayland-devel
>
More information about the gstreamer-devel
mailing list