VaapiGlobalContext::VaapiGlobalContext(std::auto_ptr<VaapiDisplay> display) : _display(display) { GNASH_REPORT_FUNCTION; if (!init()) throw VaapiException("could not initialize VA-API global context"); }
VaapiDisplay::VaapiDisplay(VADisplay display) : _display(display) { GNASH_REPORT_FUNCTION; if (!init()) { throw VaapiException("Could not create VA-API display"); } }
VaapiVideoWindow::VaapiVideoWindow(GdkWindow *parent_window, VaapiRectangle const & rect) { GdkWindowAttr wattr; wattr.event_mask = 0; wattr.x = rect.x; wattr.y = rect.y; wattr.width = rect.width; wattr.height = rect.height; wattr.wclass = GDK_INPUT_OUTPUT; wattr.window_type = GDK_WINDOW_CHILD; _window = gdk_window_new(parent_window, &wattr, GDK_WA_X|GDK_WA_Y); if (!_window) { throw VaapiException("Could not create video child window"); } gdk_window_show(_window); gdk_window_raise(_window); gdk_flush(); _rect = rect; }