- Jan 12, 2017
-
-
Sebastian Dröge authored
-
Víctor Manuel Jáquez Leal authored
vaSetInfoCallback() is not released yet. It is going to appear in VA-API 0.40.0
-
Sebastian Dröge authored
vaSetInfoCallback() was defined after 0.39.4 / 1.7.3, so check for 0.39.5 instead.
-
- Jan 11, 2017
-
-
Víctor Manuel Jáquez Leal authored
Redirect libva's logs to GStreamer logging mechanism. This is particularly useful when VA is initialized, because it always logs out the drivers details. In order to achieve this a new helper function was added as a wrapper for the vaInitialize() function. https://bugzilla.gnome.org/show_bug.cgi?id=777115
-
- Jan 10, 2017
-
-
Hyunjun Ko authored
Adds two buffers as the default value of minimum buffer. This would be used when creating and proposing vaapi bufferpool for sink pad, hence the upstream element will keep, at least, these two buffers. https://bugzilla.gnome.org/show_bug.cgi?id=775203 Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
-
Hyunjun Ko authored
If the frame is a cloned picture, its PTS comes from its parent picture. In addition, the base decoder doesn't set a valid PTS to the frame corresponding to the cloned picture. https://bugzilla.gnome.org/show_bug.cgi?id=774254
-
- Jan 09, 2017
-
-
Víctor Manuel Jáquez Leal authored
This patch fixes the check of display, rather than check for the meta, which it is known it exists.
-
Víctor Manuel Jáquez Leal authored
Rename the parameters 'vip' and 'flags' to 'alloc_info' and 'surface_alloc_flags' respectively. The purpose of this change is to auto-document those parameters. Also, aligned to this patch, the local 'alloc_info' variable was renamed as 'surface_info', because it stores the possible surface's video info, not the allocate one.
-
Víctor Manuel Jáquez Leal authored
In order to auto-document the code, this patch renames the 'vip' parameter in the functions related to gst_vaapi_video_allocator_new () to 'alloc_info', since it declares the allocation video info from the vaapi buffer pool.
-
Víctor Manuel Jáquez Leal authored
Use the existing local macro GST_VIDEO_INFO_FORMAT_STRING() to get the video format string.
-
Víctor Manuel Jáquez Leal authored
gst_vaapi_surface_new_with_format() is a wrapper for gst_vaapi_surface_new_full (). In this case, the former is simpler than the first. This patch changes that.
-
- Jan 06, 2017
-
-
Hyunjun Ko authored
If src pad caps have changed, it needs to notify it downstream. In addition, do not set passthrough if they have changed. Otherwise, transform sometimes starts processing before caps change. The passthrough value will be set in fixate later in this case. https://bugzilla.gnome.org/show_bug.cgi?id=775204
-
- Dec 21, 2016
-
-
Víctor Manuel Jáquez Leal authored
Add a capsfilter forcing the caps "video/x-raw(memory:VASurface), format=(string)NV12" between the queue and the vaapipostproc so no renegotiation is required. https://bugzilla.gnome.org/show_bug.cgi?id=776175
-
Hyunjun Ko authored
To detect and handle errors during allocator_configure_surface_info() and allocator_conigure_image_info(). https://bugzilla.gnome.org/show_bug.cgi?id=776084 Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
-
Hyunjun Ko authored
Calls gst_vaapi_plugin_base_get_allowed_raw_caps() at start() to avoid race conditions at get_caps(), especially with multiple src elements. https://bugzilla.gnome.org/show_bug.cgi?id=776303
-
- Dec 14, 2016
-
-
Víctor Manuel Jáquez Leal authored
-
Víctor Manuel Jáquez Leal authored
With this function is possible to refactor and remove duplicated code between dmabuf configuration and direct rendering/uploading configuration.
-
Víctor Manuel Jáquez Leal authored
When an instance of GstVaapiVideoAllocator fails at initializing, the log message should not include the allocator's object, because it is going to be unrefed.
-
- Dec 09, 2016
-
-
Víctor Manuel Jáquez Leal authored
-
Víctor Manuel Jáquez Leal authored
This reverts commit 32851211. videodecode's negotiate() vmethod is also called when events arrive, but this would mean that the proper configuration of sink pad might not be complete, thus we should not update the src pad. Let's keep the old non-vmethod negotitate().
-
- Dec 07, 2016
-
-
Víctor Manuel Jáquez Leal authored
This reverts commit f182b8be.
-
Hyunjun Ko authored
Query for the supported surface formats in config at get_caps() vmethod. https://bugzilla.gnome.org/show_bug.cgi?id=769266 Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
-
Hyunjun Ko authored
This method will return the valid surface formats in the current config. If the are no VAConfig it is created with the information available. https://bugzilla.gnome.org/show_bug.cgi?id=769266 Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
-
Hyunjun Ko authored
Split set_context_info() adding init_context_info() which only initialises the GstVaapiContextInfo structure inside GstVaapiEncoder required for VAConfig. https://bugzilla.gnome.org/show_bug.cgi?id=769266 Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
-
Hyunjun Ko authored
If GstVaapiContextInfo has just initial information, without frame's width and height, skip the creation of the VAContext, just keep the VAConfig. https://bugzilla.gnome.org/show_bug.cgi?id=769266 Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
-
Hyunjun Ko authored
Split the funcion context_create() into context_create() and config_create(). Decoupling VAConfig and VAContext during context creation, we could query the VAConfig for the supported surface's formats without creating a VAContext. https://bugzilla.gnome.org/show_bug.cgi?id=769266
-
- Dec 06, 2016
-
-
Víctor Manuel Jáquez Leal authored
Originally the drm backend only tried to open the first render node found. But in hybrid system this first render node might not support VA-API (propietary Nvidia driver, for example). This patch tries all the available nodes until a finding one with a VA-API supported driver. https://bugzilla.gnome.org/show_bug.cgi?id=774811 Original-patch-by: Stirling Westrup <swestrup@gmail.com> and Reza Razavi <reza@userful.com>
-
- Dec 05, 2016
-
-
Víctor Manuel Jáquez Leal authored
Added the inlined function allocator_configure_pools() moving out code from gst_vaapi_video_allocator_new() to make clear that it is a post-initalization of the object.
-
Víctor Manuel Jáquez Leal authored
Log an error message if the test image for surface downloading cannot be allocated or mapped.
-
Víctor Manuel Jáquez Leal authored
These macros are not used. Let us remove them.
-
Víctor Manuel Jáquez Leal authored
Since video_info stores the GstVideoInfo of the allocation caps, it is clear if we rename it as allocation_info, to distinguish it later from negotiation_info.
-
Julien Isorce authored
Instead of defining GstVaapiDmaBufAllocator as a hackish decorator of GstDmaBufAllocator, now, since the expose of the GstDmaBufAllocator's GType, GstVaapiDmaBufAllocator is a full feature GstAllocator inherited from GstDmaBufAllocator. https://bugzilla.gnome.org/show_bug.cgi?id=755072 Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
-
Julien Isorce authored
Add a helper function to initialize the gst_debug_vaapivideomemory, to use it either by the GstVaapiVideoAllocatorClass or GstVaapiDmabufAllocator (which is a decorator of GstDmaBufAllocator). Later, log possible errors when calling gst_vaapi_dmabuf_allocator_new () https://bugzilla.gnome.org/show_bug.cgi?id=755072
-
Hyunjun Ko authored
As the internal encoder is created at start(), let's release it at stop() vmethod, to be consistent. gst_vaapiencode_destroy() is called since it also resets the input and output states, which is something that the base class does internally after calling stop() vmethod. https://bugzilla.gnome.org/show_bug.cgi?id=769266 Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
-
- Dec 03, 2016
-
-
Edward Hervey authored
From f49c55e to 39ac2f5
-
- Dec 01, 2016
-
-
Hyunjun Ko authored
Currently, specific encoder is created during set_format(). This might lead to race condition when creating profiles with multiple encoders. This patch moves ensure_encoder() call to start() vmethod to ensure avoiding the race condition. https://bugzilla.gnome.org/show_bug.cgi?id=773546
-
Víctor Manuel Jáquez Leal authored
In commit ca0c3fd6 we remove the dynamic configuration if the bin because we assumed that the bin will be always static as it is registered. Nonetheless we were wrong, because it is possible to request, with a property, to avoid the use of the post-processor. Since we want to add a way to disable the post-processor through environment variables, this remove feature is required again. If the environment variable GST_VAAPI_DISABLE_VPP is defined the postprocessor inside of the vaapidecodebin is disabled, then vaapidecodebin is an alias of the old vaapidecode. https://bugzilla.gnome.org/show_bug.cgi?id=775041
-
Víctor Manuel Jáquez Leal authored
Instead of decorating the negotiate() method, let us override it, so the stream is locked while called. https://bugzilla.gnome.org/show_bug.cgi?id=775040
-
- Nov 26, 2016
-
-
- Nov 25, 2016
-
-
Dominique Leuenberger authored
In case libva-wayland has its headers not installed in default locations (like /usr/include), the build fails to include "wayland-client.h": CC libgstvaapi_egl_la-gstvaapiutils_egl.lo In file included from gstvaapidisplay_wayland.h:27:0, from gstvaapidisplay_egl.c:35: /usr/include/va/va_wayland.h:31:28: fatal error: wayland-client.h: No such file or directory #include <wayland-client.h> As we already passed VA_CLAGS, /usr/include/va/va_wayland.h could be found, but it is our fault not to instruct the system that we ALSO care for va_wayland. We correctly query for libva-wayland.pc in configure and use this in other places as well. It is thus only correct and consequent, to do it also at this spot. https://bugzilla.gnome.org/show_bug.cgi?id=773946
-