- //xover = gst_element_factory_make("xvimagesink", "xover");
- //xover = gst_element_factory_make("ximagesink", "xover");
+ widget = GHB_WIDGET (ud->builder, "preview_button_image");
+ gtk_widget_get_size_request(widget, &ud->preview->button_width, &ud->preview->button_height);
+
+#if defined(_ENABLE_GST)
+ GstBus *bus;
+ GstElement *xover;
+
+#if GTK_CHECK_VERSION(2,18,0)
+ if (!gdk_window_ensure_native(ud->preview->view->window))
+ {
+ g_message("Couldn't create native window for GstXOverlay. Disabling live preview.");
+ GtkWidget *widget = GHB_WIDGET(ud->builder, "live_preview_box");
+ gtk_widget_hide (widget);
+ widget = GHB_WIDGET(ud->builder, "live_preview_duration_box");
+ gtk_widget_hide (widget);
+ return;
+ }
+#endif
+
+#if !defined(_WIN32)
+ ud->preview->xid = GDK_DRAWABLE_XID(ud->preview->view->window);
+#else
+ ud->preview->xid = GDK_WINDOW_HWND(ud->preview->view->window);
+#endif
+ ud->preview->play = gst_element_factory_make("playbin", "play");