Sreerenj Balachandran [Fri, 4 Mar 2016 08:51:42 +0000 (10:51 +0200)]
decoder: vp9: Assign values for profile and bit_depth from frame header
bit_depth field has added only in VA-API 0.39.0, added version check.
Sebastian Dröge [Fri, 4 Mar 2016 07:12:13 +0000 (09:12 +0200)]
build: Dist gstreamer-vaapi.doap and configure.ac/autogen.sh
https://bugzilla.gnome.org/show_bug.cgi?id=763067
Sebastian Dröge [Tue, 1 Mar 2016 17:23:51 +0000 (19:23 +0200)]
Release 1.7.90
Sebastian Dröge [Tue, 1 Mar 2016 14:14:47 +0000 (16:14 +0200)]
configure: Use AG_GST_SET_PACKAGE_RELEASE_DATETIME_WITH_NANO to set release date
Víctor Manuel Jáquez Leal [Tue, 1 Mar 2016 10:35:49 +0000 (11:35 +0100)]
vaapidecode: intersect with filter in getcaps()
In commit
6034734d I forgot to add the caps filter intersection in the
getcaps() vmethod generating a regression when a capsfilter is set in the
pipeline.
This commit adds the caps filter intersection.
Lim Siew Hoon [Mon, 29 Feb 2016 09:55:27 +0000 (11:55 +0200)]
Add memset to initialize value for VAEncSliceParameterBufferJPEG
https://bugzilla.gnome.org/show_bug.cgi?id=762850
Sebastian Dröge [Fri, 26 Feb 2016 10:42:46 +0000 (12:42 +0200)]
Automatic update of common submodule
From b64f03f to 6f2d209
Víctor Manuel Jáquez Leal [Wed, 24 Feb 2016 11:36:33 +0000 (12:36 +0100)]
build: add m4 directory
Instead of rely on the automatic creation of m4 directory by aclocal, we
already control it. Later we could create our own m4 scripts in order to
unclutter configure.ac
https://bugzilla.gnome.org/show_bug.cgi?id=762528
Scott D Phillips [Tue, 23 Feb 2016 08:55:02 +0000 (10:55 +0200)]
decoder: hevc: Fill dependent slice segment headers while parsing
Copy the data into the dependent slice segment header from the
corresponding independent slice segment header during parsing.
Previously the reference to the "previous" independent header was
held through the parsing phase and then dereferenced during the
decoding phase. This caused all dependent headers to be populated
with the data of the AU's last independent header instead of the
proper corresponding header.
https://bugzilla.gnome.org/show_bug.cgi?id=762352
Changes since v1:
- Reworded commit message
Víctor Manuel Jáquez Leal [Wed, 17 Feb 2016 12:43:48 +0000 (13:43 +0100)]
vaapidecode: use video decoder getcaps()
The usage of getcaps() vmethod is preferred than to handle manually the sink's
caps query.
In order to avoid function declarations, this patch moves the class_init()
method to the end of the file.
Víctor Manuel Jáquez Leal [Wed, 17 Feb 2016 11:51:45 +0000 (12:51 +0100)]
plugins: remove deprecated code
Since we are only supporting current GStreamer version, since 1.3
gst_buffer_pool_config_add_option() checks if the option to add is
already set. There is no need to do it ourselves.
Thiago Santos [Fri, 19 Feb 2016 22:03:44 +0000 (19:03 -0300)]
vaapidecoder_h265: fix parsing of NALU aligned data
Don't assume the whole buffer is a single NAL, instead look for the
next start code in case there are multiple NALs per buffer.
https://bugzilla.gnome.org/show_bug.cgi?id=762328
Thiago Santos [Fri, 19 Feb 2016 14:10:25 +0000 (11:10 -0300)]
vaapidecoder_h264: fix parsing of NALU aligned data
Don't assume the whole buffer is a single NAL, instead look for the
next start code in case there are multiple NALs per buffer.
https://bugzilla.gnome.org/show_bug.cgi?id=762328
Vineeth TM [Thu, 18 Feb 2016 01:13:53 +0000 (10:13 +0900)]
vaapisink: Fix event,pad,structure memory leaks
https://bugzilla.gnome.org/show_bug.cgi?id=762229
Lim Siew Hoon [Wed, 17 Feb 2016 13:40:54 +0000 (15:40 +0200)]
Add icamerasrc as dmabuf capable peer element
icamerasrc is another gstreamer plugin using to capture RAW
frames from camera device. It is based on libcamhal library.
There are some properties available to control icamera behavior.
Signed-off-by: Lim Siew Hoon <siew.hoon.lim@intel.com>
Tested & Reviewed: Zhu Haiyang <haiyang.zhu@intel.com>
https://bugzilla.gnome.org/show_bug.cgi?id=759481
Fixme: This is the similar workaround we done for v4l2src.
The workaround will be removed once we fix #755072
Vineeth TM [Wed, 17 Feb 2016 08:15:28 +0000 (17:15 +0900)]
vaapipluginbase: Fix structure memory leak
config structure is not being freed in all cases
https://bugzilla.gnome.org/show_bug.cgi?id=762172
Vineeth TM [Wed, 17 Feb 2016 08:20:08 +0000 (17:20 +0900)]
vaapidecode: Fix videocodec state memory leak
When state is not NULL and either width/height of video info is 0, then state leaks
https://bugzilla.gnome.org/show_bug.cgi?id=762173
Tim-Philipp Müller [Tue, 16 Feb 2016 15:44:48 +0000 (15:44 +0000)]
vaapisink: post message for application for unhandled keyboard/mouse events
Makes (most) keyboard shortcuts work in gst-play-1.0 when
the video window has focus.
Vineeth TM [Mon, 15 Feb 2016 23:48:43 +0000 (08:48 +0900)]
vaapidecode: Fix capsfeature memory leak
https://bugzilla.gnome.org/show_bug.cgi?id=762116
Vineeth TM [Mon, 15 Feb 2016 23:15:40 +0000 (08:15 +0900)]
vaapisink: Fix capsfeature memory leak
caps feature allocated is not being freeing in some cases
https://bugzilla.gnome.org/show_bug.cgi?id=762111
Sebastian Dröge [Tue, 16 Feb 2016 13:09:01 +0000 (15:09 +0200)]
vaapi: Fix various compiler warnings and disable -Wredundant-decls for now
Sebastian Dröge [Tue, 16 Feb 2016 12:36:39 +0000 (14:36 +0200)]
configure: Fix setting of extra compiler warning flags
Víctor Manuel Jáquez Leal [Mon, 15 Feb 2016 17:00:49 +0000 (18:00 +0100)]
libs: fix build error
gst_vaapi_buffer_proxy_{acquire_handle,release_handle,finalize,class}
functions are used only when libva's API version is greater than 0.36.0
This patch guards those functions completely rather than just their
content. The patch is a continuation of commit
38f8fea4
Original-patch-by: Vineeth TM <vineeth.tm@samsung.com>
https://bugzilla.gnome.org/show_bug.cgi?id=762055
Vineeth TM [Mon, 15 Feb 2016 01:01:54 +0000 (10:01 +0900)]
tests: simple-encoder: fix build error
argument mismatch of gsize with 'long unsigned int'
https://bugzilla.gnome.org/show_bug.cgi?id=762055
Sreerenj Balachandran [Thu, 4 Feb 2016 08:16:00 +0000 (10:16 +0200)]
vaapisink: Fix wrong caps advertising
The get_caps() should only report the supported formats.
https://bugzilla.gnome.org/show_bug.cgi?id=761147
Thiago Santos [Fri, 5 Feb 2016 21:11:29 +0000 (18:11 -0300)]
Automatic update of common submodule
From e97c9bb to b64f03f
Víctor Manuel Jáquez Leal [Wed, 3 Feb 2016 18:07:40 +0000 (19:07 +0100)]
rename encoders to vaapi{codec}enc
Trying to comply with GStreamer's element names, this patch renames the
encoders using the name format vaapi{codec}enc.
In this way, the plugin documentation is linked correctly.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Wed, 3 Feb 2016 17:42:36 +0000 (18:42 +0100)]
Use new AG_GST_ARG_ENABLE_EXTRA_CHECKS #define
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Wed, 3 Feb 2016 17:02:21 +0000 (18:02 +0100)]
build: remove vp9 parser check
Since the VP9 parser was added in gst-plugins-bad 1.7.1 we can remove safely
the check of the parser, as we did for the others.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Wed, 3 Feb 2016 16:06:48 +0000 (17:06 +0100)]
Back to development
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Wed, 3 Feb 2016 15:53:41 +0000 (16:53 +0100)]
Release 1.6.0
Víctor Manuel Jáquez Leal [Wed, 3 Feb 2016 15:45:18 +0000 (16:45 +0100)]
libs: fix compiler warnings
After setting the release flags, the compiler warns about a couple
initialized variables.
Also marked a couple of set variables as unused, because they are only
used for assertion.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Fri, 29 Jan 2016 19:41:27 +0000 (20:41 +0100)]
docs: update plugin documentation
Update all the documentation of elements of the vaapi plugin.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Fri, 29 Jan 2016 14:39:09 +0000 (15:39 +0100)]
resurrect gtk-doc machinery
Our auto-generated documentation has been a bit neglected. This patch replaces
the 'normal' gtk-doc with the one used in GStreamer, which is adapted for
plugins, elements and libraries.
This patch also re-enables documentation generation.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Thu, 28 Jan 2016 18:35:24 +0000 (19:35 +0100)]
use gst-common submodule
This is 'the' big change in gstreamer-vaapi autoconf. Now it uses the official
GStreamer common submodule.
The documentation generation has been disable temporarily since it needs a
major rework, which will be done in the following commit.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Mon, 25 Jan 2016 15:06:03 +0000 (16:06 +0100)]
add gst-common submodule
Pointing to branch 1.6
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Thu, 28 Jan 2016 12:28:30 +0000 (13:28 +0100)]
add doap descriptor
DOAP (Description of a Project) is an RDF Schema and XML vocabulary to
describe software projects, in particular free and open source software.
The description is used in GStreamer as in many other open source projects.
This patch adds the doap description of this project.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Wed, 3 Feb 2016 10:50:13 +0000 (11:50 +0100)]
libs: humongous code style fix
As part of the upstreaming process of gstreamer-vaapi into the GStreamer
umbrella, we need to comply with the project's code style. This meant to
change a lot of code.
It was decided to use a single massive patch to update the code style.
I would like to apologize with the original developers of this code because of
the history breakage.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Wed, 3 Feb 2016 10:04:15 +0000 (11:04 +0100)]
libs: small refactors to enhance the code style
As gst-indent generated ugly code in these cases, this patch changes the used
idiomatic into other one.
No functional changes were introduced.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Tue, 2 Feb 2016 16:59:57 +0000 (17:59 +0100)]
libs: small code style fixes
This a set of small code style fixes detected as-is by gst-indent.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Tue, 2 Feb 2016 16:50:19 +0000 (17:50 +0100)]
libs: trivial comment style fixes
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Tue, 2 Feb 2016 16:31:02 +0000 (17:31 +0100)]
libs: avoid gst-indent mess up
Guard pieces of code to avoid gst-ident to mess up the following code.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Wed, 3 Feb 2016 11:17:59 +0000 (12:17 +0100)]
plugins: fix code style
Minor code style changes by executing gst-indent in gst/vaapi directory.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Tim-Philipp Müller [Mon, 1 Feb 2016 13:22:10 +0000 (13:22 +0000)]
Fix some more compiler warning
Two (false) compiler warnings about variables potentially
being used uninitialized, and one about a variable being
set but not used.
https://bugzilla.gnome.org/show_bug.cgi?id=759192
Tim-Philipp Müller [Mon, 1 Feb 2016 13:02:13 +0000 (13:02 +0000)]
vaapi: fix 'ISO C90 forbids mixed declarations and code' compiler warnings
Declare variables at the beginning of a code block, which
is how it's done in GStreamer.
https://bugzilla.gnome.org/show_bug.cgi?id=759192
Sreerenj Balachandran [Thu, 28 Jan 2016 12:21:04 +0000 (14:21 +0200)]
decoder: vp9: Fix crop rectangle setting
Align with software vp9dec behaviour: Add crop rectangle
only if display_width/display_height is less than the
frame_hdr->width/frame_hdr->height
Sreerenj Balachandran [Wed, 27 Jan 2016 06:56:45 +0000 (08:56 +0200)]
vaapidecode: Fix renegotiation for resolution change
Always renegotiate the pool if the immediate frame which going
to be pushed has a different un-cropped resolution than the already
configured one.
Víctor Manuel Jáquez Leal [Fri, 29 Jan 2016 14:51:49 +0000 (15:51 +0100)]
plugins: use the same pre-processor macro
In gstvaapipluginbase.c we are using the macro USE_GST_GL_HELPERS to guard the
code related with GstGL. Nonetheless, in gstvaapipluginbase.h we are using
HAVE_GST_GL_GL_H macro in order to include the GstGLContext's header.
We should use only one to be homogeneous. This patch sets USE_GST_GL_HELPERS
in the header file.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Fri, 29 Jan 2016 17:06:29 +0000 (18:06 +0100)]
decoder: update a deprecated function
Somehow this didn't show up earlier, but gst_adapter_prev_timestamp() got
deprecated since GStreamer 1.0.
This patch replace it with gst_adapter_prev_pts()
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Fri, 29 Jan 2016 12:13:56 +0000 (13:13 +0100)]
build: honor configure's cache
The user might enable --config-cache when calling configure script. If so, our
configuration variables will not be correctly calculated.
This patch extracts the value of our variables either from the cache or from
the operation result.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Thu, 28 Jan 2016 18:12:13 +0000 (19:12 +0100)]
build: use common version variables
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Thu, 28 Jan 2016 18:01:43 +0000 (19:01 +0100)]
build: hard-code an unneeded macro
That macro is required for EGL's dynamic module loading, but since
gstreamer-vaapi doesn't creates dynamic modules, it is not required anymore.
That code in gst-libs/gst/vaapi/gstvaapidisplay_egl.c should be removed.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Thu, 28 Jan 2016 16:14:51 +0000 (17:14 +0100)]
build: refactorization of dependency tracking
This patch tries to avoid branching in configure.ac using a more functional
approach in macros usage.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Fri, 29 Jan 2016 11:34:30 +0000 (12:34 +0100)]
build: check for OpenGL either GLX or EGL are requested
Refactor some code in configure.ac to centralize $enable_opengl definition.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Thu, 28 Jan 2016 15:55:44 +0000 (16:55 +0100)]
build: indent and add square braces
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Thu, 28 Jan 2016 15:50:39 +0000 (16:50 +0100)]
build: upgrade autotools version dependency
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Fri, 29 Jan 2016 10:14:34 +0000 (11:14 +0100)]
build: enhance string comparisons
Add a 'x' as a prefix in string comparisons to watch out for edge cases where
the string is empty or undefined.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Thu, 28 Jan 2016 13:29:16 +0000 (14:29 +0100)]
build: remove unused variables
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Wed, 27 Jan 2016 18:00:51 +0000 (19:00 +0100)]
build: remove check for old version of gstreamer
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Wed, 27 Jan 2016 16:55:02 +0000 (17:55 +0100)]
build: remove GStreamer's parsers checks
This patch removes almost all the parsers check since they are already in place,
with the exception of the VP9 parser, since it was merged in Gstreamer 1.7.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Fri, 29 Jan 2016 11:11:17 +0000 (12:11 +0100)]
build: add gstreamer-pbutils dependency
This dependency was added in gstvaapidecodebin with the call
gst_missing_element_message_new().
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Wed, 27 Jan 2016 16:53:59 +0000 (17:53 +0100)]
build: fix variable declaration
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Wed, 27 Jan 2016 16:47:32 +0000 (17:47 +0100)]
build: fix when HEVC decoder is disabled
This a very pathological situation: when we have a HEVC encoder but not a HEVC
decoder.
The encoder needs functions that are only available when the decoder is
enabled.
This patch moves the utils functions into the generic sources, such as the
rest of the utils.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Wed, 27 Jan 2016 16:20:31 +0000 (17:20 +0100)]
build: remove unused EGL specific sources
These Makefile variables are not used at all.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Wed, 27 Jan 2016 16:19:32 +0000 (17:19 +0100)]
build: remove check for GStreamer 1.2
Since we are working for current stable GStreamer 1.6
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Tue, 26 Jan 2016 10:49:40 +0000 (11:49 +0100)]
Remove more video parser crufts
This header is not used anymore since it declares parsers that are
already in GStreamer 1.6
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Tim-Philipp Müller [Mon, 25 Jan 2016 12:43:15 +0000 (12:43 +0000)]
docs: remove library documentation which is non-public now
https://bugzilla.gnome.org/show_bug.cgi?id=759192
Tim-Philipp Müller [Mon, 25 Jan 2016 12:40:49 +0000 (12:40 +0000)]
Remove debian.upstream packaging
https://bugzilla.gnome.org/show_bug.cgi?id=759192
Víctor Manuel Jáquez Leal [Fri, 22 Jan 2016 18:27:13 +0000 (19:27 +0100)]
Remove old gst version guards
As gstreamer-vaapi now only supports from GStreamer 1.6, this patch removes
all the old GStreamer version guards.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Fri, 22 Jan 2016 18:23:43 +0000 (19:23 +0100)]
Remove video parser crufts
We forgot to remove gstvaapiparse.c when we removed all the videoparser
machinery.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Wed, 9 Dec 2015 18:52:33 +0000 (19:52 +0100)]
libs: remove versioning
Since we don't install libraries anymore, it makes no sense to keep
versioning them according to the gstreamer's version.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Wed, 9 Dec 2015 15:59:16 +0000 (16:59 +0100)]
libs: make libraries no installables
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Wed, 9 Dec 2015 14:37:39 +0000 (15:37 +0100)]
Do not install libgstvaapi headers
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Sreerenj Balachandran [Tue, 19 Jan 2016 08:40:54 +0000 (10:40 +0200)]
Remove videoparser patches
Víctor Manuel Jáquez Leal [Wed, 9 Dec 2015 14:18:11 +0000 (15:18 +0100)]
Remove pkg-config files
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Wed, 9 Dec 2015 12:24:30 +0000 (13:24 +0100)]
Remove codecparsers submodule
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Sreerenj Balachandran [Mon, 7 Dec 2015 22:36:36 +0000 (00:36 +0200)]
Remove libvpx submodule
We will be using upstream codecparsers always.
No more internal libvpx !
Víctor Manuel Jáquez Leal [Wed, 9 Dec 2015 13:12:22 +0000 (14:12 +0100)]
build: fix check for GstJpegParser
Right now the local JPEG parser is always compiled because the check for the
upstreamed version is broken: it looks for an non existent symbol:
GstJpegImage.
This patch changes that check for< GstJpegFrameHdr.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Michael Olbrich [Wed, 28 Oct 2015 08:56:46 +0000 (09:56 +0100)]
wayland: free the frame in frame_release_callback()
This basically reverts
62c3888b76afc69f714a020957e8c5dd9d98f561 (wayland:
decouple wl_buffer from frame).
Otherwise the frame may be overwritten while it is still used by the
compositer:
The frame done callback (frame_done_callback()) is called, when the
compositor is done processing the frame and hands it to the hardware.
The buffer release callback (frame_release_callback()) is called when the
buffer memory is no longer used.
This can be quite some time later: E.g. if weston (with the DRM backend)
puts the buffer on a hardware plane, then then buffer release callback is
called when the kernel is done with the buffer. This is usually when the
next frame is shown, so most likely after the frame done callback for the
next frame!
Since
70eff01d36a2870cbf06ffb91c2a941e8cb6b804 "wayland: sync() when
destroy()" the mentioned possible leak should no longer be a problem, so
reverting this change should cause no leaking buffers.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
https://bugzilla.gnome.org/show_bug.cgi?id=758848
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
Víctor Manuel Jáquez Leal [Thu, 14 Jan 2016 16:36:24 +0000 (17:36 +0100)]
vaapipostproc: check ANY caps at transform_caps()
When transforming downstream caps we should check for ANY caps from peer pad,
otherwise we get a segmentation fault.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
https://bugzilla.gnome.org/show_bug.cgi?id=759893
Víctor Manuel Jáquez Leal [Wed, 13 Jan 2016 18:17:02 +0000 (19:17 +0100)]
vaapisink: ignore frame if its upload failed
When gst_vaapi_plugin_base_get_input_buffer() fail to copy the input buffer
into a VAAPI buffer, the return value is GST_FLOW_NOT_SUPPORTED, and it was
ignored by the vaapisink, leading to a segmentation fault.
This patch ignores the frame that generated the GST_FLOW_NOT_SUPPORTED
returned by gst_vaapi_plugin_base_get_input_buffer(), avoiding the
segmentation fault, but doing and effort to continue rendering. This is
the same behavior of ximagesink.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
https://bugzilla.gnome.org/show_bug.cgi?id=759332
Joel Holdsworth [Wed, 9 Dec 2015 16:24:50 +0000 (18:24 +0200)]
build: Don't ignore GST_PLUGIN_PATH_1_0 even if the directory doesn't exist yet
https://bugzilla.gnome.org/show_bug.cgi?id=759184
Sreerenj Balachandran [Tue, 8 Dec 2015 14:14:11 +0000 (16:14 +0200)]
Add 10 HEVC 10 bit decoding support
Only supporting vaapidecode ! vaapisink combination for now.
Missing dependencies:
1: No support for P010 video format in GStreamer
2: No support for P010 vaGetImage()/vaPutimage() in vaapi-intel-driver
3: As a result of 1&2 , we have no support for Vaapi Video memory mapping
through GstVideoMeta.
Right now we only set chroma format (YUV420 with more than 8 bits per channel)
for surface pool and keeping GST_VIDEO_FORMAT as ENCODED. The underlying format
of the surfaces is implementation (driver) defined, which is P010.
Sreerenj Balachandran [Mon, 1 Jan 2001 02:59:28 +0000 (04:59 +0200)]
gstvaapisurfacepool: Add new API to create surface pool based on chroma type
This new API gst_vaapi_surface_pool_new_with_chroma_type() is for
creating a new GstVaapiVideoPool of GstVaapiSurfaces with the specified
chroam type and dimensions. The underlying format of the surfaces is
implementation (driver) defined.
Sreerenj Balachandran [Mon, 7 Dec 2015 17:06:28 +0000 (19:06 +0200)]
Add definitions for YUV420 with more than 8 bits per channel
Sreerenj Balachandran [Mon, 7 Dec 2015 15:26:24 +0000 (17:26 +0200)]
gstvaapiporfile: Fix string representation of HEVCMain10 profile
Sreerenj Balachandran [Mon, 7 Dec 2015 14:17:11 +0000 (16:17 +0200)]
Bump version for development
Sreerenj Balachandran [Mon, 7 Dec 2015 10:52:10 +0000 (12:52 +0200)]
0.7.0
Sreerenj Balachandran [Mon, 7 Dec 2015 10:49:05 +0000 (12:49 +0200)]
NEWS: Updates
Sreerenj Balachandran [Mon, 7 Dec 2015 10:47:04 +0000 (12:47 +0200)]
AUTHORS: Update
Sreerenj Balachandran [Mon, 7 Dec 2015 10:39:23 +0000 (12:39 +0200)]
README: Update
Víctor Manuel Jáquez Leal [Thu, 26 Nov 2015 09:34:12 +0000 (10:34 +0100)]
texture: detect GL version and use the proper API
When receiving the texture from the application or the video sink, we must
know it size and border. To query the texture the API has changed according to
the OpenGL version used in the GL context of the application/vsink.
This patch checks the current context API type and queries the texture
according to this detected API.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
https://bugzilla.gnome.org/show_bug.cgi?id=753099
Víctor Manuel Jáquez Leal [Thu, 26 Nov 2015 09:19:32 +0000 (10:19 +0100)]
texture: check for expected target and format
gst_vaapi_texture_glx_new_wrapped() only handles a GL_TEXTURE_2D target and
formats GL_RGBA or GL_BGRA.
This patch adds a debugging verification of those values.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
https://bugzilla.gnome.org/show_bug.cgi?id=753099
Víctor Manuel Jáquez Leal [Thu, 26 Nov 2015 09:26:10 +0000 (10:26 +0100)]
libs: add gl3_bind_texture_2d()
Since OpenGL3.1 removed the fixed pipelines[1] enabling 2D textures is not
needed. In particular, the Intel's Mesa implementation complains if it is
called.
This patch add a new binding function for 2D textures, without enabling
gl3_bind_texture_2d()[2].
1. https://www.opengl.org/wiki/Fixed_Function_Pipeline
2. https://www.opengl.org/wiki/Common_Mistakes#OOP_and_hidden_binding
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
https://bugzilla.gnome.org/show_bug.cgi?id=753099
Víctor Manuel Jáquez Leal [Thu, 26 Nov 2015 09:14:45 +0000 (10:14 +0100)]
libs: add gl_get_current_api()
In order to know which OpenGL API use, we must detect the API type of current
context. This patch adds the function gl_get_current_api() which returns the
OpenGL API type.
This function is an adaptation of gst_gl_context_get_current_gl_api() from
GstGL.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
https://bugzilla.gnome.org/show_bug.cgi?id=753099
Sreerenj Balachandran [Fri, 27 Nov 2015 10:29:11 +0000 (12:29 +0200)]
build: Add gmodule dependency for libgstvaapi_egl
https://bugzilla.gnome.org/show_bug.cgi?id=756259
Sreerenj Balachandran [Fri, 27 Nov 2015 12:24:55 +0000 (14:24 +0200)]
patches/videoparsers: h264: Disable passthorugh mode enabling
This is a quick fix for regression introduced by the upstream
commit
e8908f5aeef952566f6bccde743c7735d3f8c6ef in h264 videoparser.
The patch is disabling the passthrough mode, otherwise it will
break multi-layer mvc stream parsing.
https://bugzilla.gnome.org/show_bug.cgi?id=758656
Víctor Manuel Jáquez Leal [Wed, 25 Nov 2015 13:12:53 +0000 (15:12 +0200)]
build: add gsth265parse patches conditionally
As gsth265parse was added in GStreamer 1.4, and gstreamer-vaapi still support
GStreamer 1.2, the patching of gsth265parse must be conditional to the target
GStreamer version.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
https://bugzilla.gnome.org/show_bug.cgi?id=755525
Víctor Manuel Jáquez Leal [Wed, 25 Nov 2015 13:11:28 +0000 (15:11 +0200)]
build: declare correctly parse lib built files
This is a continuation of commit
fc8a0d12
When declaring BUILT_SOURCES, those files should not be distributed. This
patch avoids the distribution of the generated source code.
Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
https://bugzilla.gnome.org/show_bug.cgi?id=755525
Sreerenj Balachandran [Tue, 24 Nov 2015 15:14:20 +0000 (17:14 +0200)]
build: libvpx: Add missing source file