AnsweredAssumed Answered

XCreateWindow request fails for imxeglvivsink plugin

Question asked by Naseeb Panghal on Apr 13, 2018
Latest reply on Apr 23, 2018 by Naseeb Panghal

Hardware and Software details:
Board: wb quad Rev C1
Image: wandboard-all-ubuntu-16.04-sdcard-20160520.img downloaded from wandboard site:(http://download.wandboard.org/wandboard-imx6/ubuntu-16.04/)

Drivers and gstreamer(1.8.0) plugins are already installed with the image.

 

I debug imxeglvivsink plugin using source code gstreamer-imx  from github and found that XCreateWindow request fails to create window.

 

Let me explain what i am trying to do.

1. I create a GTK+ window using gtk_window_new (GTK_WINDOW_TOPLEVEL);

2. Then add drawing area using gtk api gtk_drawing_area_new

3.Once video area is "realized", get window handle using GDK_WINDOW_XID (window) and store in variable video_window_handle( i will use it later).

4. Inside gstreamer bus sync handler i use video_window_handle to set it as overlay using gstreamer api gst_video_overlay_set_window_handle().

5. In imxeglvivsink, XCreateWindow api uses video_window_handle as parent window. AND here everything goes wrong.

 

I debugged further using xtrace utility, CreateWindow request fails with BADMATCH. I check the visuals for video_window_handle(window created using GTK+GDK) its value is 0xC7 and default X value it is 0x21.

 

I don't understand where to configure GDK to use system defalut X visual so that parameter match for parent and child window and XCreateWindow gets successful.

I have searched it all the place but not found any such setting. Please help.

 

For ubuntu-14.04 i did not do any such setting, there by default visual match for both GTK window and XCreateWindow.

 

Let me know in case any further information is required.

Outcomes