platform/upstream/gstreamer.git
8 years agodecoder: vp9: Align with the ABI changes in vp9 codecparser
Sreerenj Balachandran [Fri, 1 Apr 2016 11:00:28 +0000 (14:00 +0300)]
decoder: vp9: Align with the ABI changes in vp9 codecparser

The subsampling_x, subsampling_y, bit_depth, color_space and color_range
fileds are moved from GstVp9FrameHdr to the global GstVp9Parser structure.
These fields are only present in keyframe or intra-only frame, no need to
duplicate them for inter-frames.

https://bugzilla.gnome.org/show_bug.cgi?id=764082

8 years agodecoder: vp9 : Add 10bit decoding support (Profile2)
Sreerenj Balachandran [Fri, 1 Apr 2016 10:59:59 +0000 (13:59 +0300)]
decoder: vp9 : Add 10bit decoding support (Profile2)

https://bugzilla.gnome.org/show_bug.cgi?id=764082

8 years agogstvaapiporfile: Add more VP9 profile definitions
Sreerenj Balachandran [Fri, 1 Apr 2016 10:57:45 +0000 (13:57 +0300)]
gstvaapiporfile: Add more VP9 profile definitions

https://bugzilla.gnome.org/show_bug.cgi?id=764082

8 years agobuild: possibility to disable tests
Víctor Manuel Jáquez Leal [Wed, 3 Feb 2016 19:34:49 +0000 (20:34 +0100)]
build: possibility to disable tests

The configuration option --disable-examples will disable the compilation of
the sample apps in tests/ directory.

8 years agounify caps template for VAAPI encoders and decoders
Víctor Manuel Jáquez Leal [Tue, 29 Mar 2016 12:25:55 +0000 (14:25 +0200)]
unify caps template for VAAPI encoders and decoders

There is no difference in VAAPI surface caps between encoders and decoders.
Thus, the patch makes a simplification by removing encoders specific caps and
shares the same definition of VAAPI surfaces caps for all the elements.

8 years agovaapidecode: move gst_vaapidecode_negotiate() code
Víctor Manuel Jáquez Leal [Thu, 10 Mar 2016 16:42:55 +0000 (17:42 +0100)]
vaapidecode: move gst_vaapidecode_negotiate() code

With it we can remove a function declaration, making the code a bit
more readable.

https://bugzilla.gnome.org/show_bug.cgi?id=764316

8 years agodocs: generate vaapijpegdec documentation
Víctor Manuel Jáquez Leal [Tue, 29 Mar 2016 11:50:00 +0000 (13:50 +0200)]
docs: generate vaapijpegdec documentation

https://bugzilla.gnome.org/show_bug.cgi?id=764314

8 years agodecoder: h265: Fix offset calculation when there is more than one vps/sps/pps present...
Sreerenj Balachandran [Wed, 30 Mar 2016 11:37:21 +0000 (14:37 +0300)]
decoder: h265: Fix offset calculation when there is more than one vps/sps/pps present in codec_data

The array_completeness, reserved bit and num_nal_units fields
in HEVCDecoderConfigurationRecord will be present for each VPS/SPS/PPS array list,
but not for each occurance of similar headers.

https://bugzilla.gnome.org/show_bug.cgi?id=764274

8 years agovideo-format: Keep the HW order preference while mapping to GstVideoFormats
Sreerenj Balachandran [Tue, 29 Mar 2016 12:34:38 +0000 (15:34 +0300)]
video-format: Keep the HW order preference while mapping to GstVideoFormats

8 years agogst/vaapi: keep precedence for NV12 over I420
Sreerenj Balachandran [Tue, 29 Mar 2016 12:02:46 +0000 (15:02 +0300)]
gst/vaapi: keep precedence for NV12 over I420

Use NV12 as default "assumption" format all over.
NV12 is the default high priority format used my most of the
vaapi-drivers.

8 years agovaapidecode: Use video format derived from decoded surface as default src pad format
Sreerenj Balachandran [Tue, 29 Mar 2016 11:34:37 +0000 (14:34 +0300)]
vaapidecode: Use video format derived from decoded surface as default src pad format

Use the surface format derived from first decoded surface
to negotiate the downstream video format capabilities.

https://bugzilla.gnome.org/show_bug.cgi?id=759181

8 years agoAdd P010 video format support
Scott D Phillips [Tue, 29 Mar 2016 11:34:00 +0000 (14:34 +0300)]
Add P010 video format support

The P010 video format is the native format used by the vaapi intel driver
for HEVCMain10 decode . Add support for planes and images of this video format.

https://bugzilla.gnome.org/show_bug.cgi?id=759181

8 years agolibs: x11: allows 30-bit colour depth
Stephen [Sun, 27 Mar 2016 09:11:00 +0000 (09:11 +0000)]
libs: x11: allows 30-bit colour depth

The colour depth is clamped to 24 when it is not equal {15,16,24,32}. But this
fails with the NVIDIA binary driver as it doesn't advertise a TrueColor visual
with a depth of 24 (only 30 and 32). Allowing the depth to be 30, lets everything
work as expected.

https://bugzilla.gnome.org/show_bug.cgi?id=764256

8 years agogltextureupload: use an array for texture type
Víctor Manuel Jáquez Leal [Mon, 28 Mar 2016 11:13:56 +0000 (13:13 +0200)]
gltextureupload: use an array for texture type

Instead of using a single value for the texture type, use an array with 4
elements, just as the GstVideoGLTextureUploadMeta, avoiding a buffer
overflow.

https://bugzilla.gnome.org/show_bug.cgi?id=764231

8 years agovaapidecode: Fix decide_allocation handling
Sreerenj Balachandran [Thu, 24 Mar 2016 13:09:43 +0000 (15:09 +0200)]
vaapidecode: Fix decide_allocation handling

Set the already configured pool in decide_allocation query
in cases where pool renegotiation is not required.

https://bugzilla.gnome.org/show_bug.cgi?id=753914

8 years agovaapidecode: Derive and save the decoded surface format
Sreerenj Balachandran [Thu, 24 Mar 2016 13:09:15 +0000 (15:09 +0200)]
vaapidecode: Derive and save the decoded surface format

After the decoding of first frame, try to extract the exact
decoded surface format using vaDeriveImage and keep this
as the format in decoded_info.

https://bugzilla.gnome.org/show_bug.cgi?id=753914

8 years agoMake vaapidecode to advertise the cropped values in srcpad, but negotiate pool only...
Sreerenj Balachandran [Thu, 24 Mar 2016 13:08:50 +0000 (15:08 +0200)]
Make vaapidecode to advertise the cropped values in srcpad, but negotiate pool only if needed

-- Maintaing decoded surface resoluton and actual display resoultion separately
-- Before pushing every frames downstream, check for the requirement of pool negoation and
output_state negotiation: This is needed to avoid multiple issuses with cropping,
multi-resoluton video handling, more complex multi resolution decode scenarios for vp9decode,
possible wrong behaviour from upstream element to report uncropped values etc. Due to these reasons,
We can't just reliably use the resolution change notification from libgstvaapi for pool renegotiation too.
This is slight overhead, but safe enough. Optimization could be possible though.

https://bugzilla.gnome.org/show_bug.cgi?id=753914

8 years agovaapidecode: Delay the output format setting until we have a decoded surface
Sreerenj Balachandran [Thu, 24 Mar 2016 13:08:27 +0000 (15:08 +0200)]
vaapidecode: Delay the output format setting until we have a decoded surface

This will help to consoidate the out caps negotiation to a single place,
which will make the code simpler, allows to get the exact decoded format
if needed and the selected chroma type too.

https://bugzilla.gnome.org/show_bug.cgi?id=753914

8 years agovaapidecode: GST_VAAPIDECODE macro is a cast
Víctor Manuel Jáquez Leal [Thu, 24 Mar 2016 12:36:24 +0000 (13:36 +0100)]
vaapidecode: GST_VAAPIDECODE macro is a cast

This patch is the continuation of commit 1e1d3b1d because the function
gst_vaapidecode_get_type() got undefined since then.

Now, the macro GST_VAAPIDECODE is a simple cast to the GstVaapiDecode
structure. The rest of the GObject handling macros were deleted too.

8 years agoBack to development
Sebastian Dröge [Thu, 24 Mar 2016 11:34:18 +0000 (13:34 +0200)]
Back to development

8 years agoRelease 1.8.0
Sebastian Dröge [Thu, 24 Mar 2016 11:11:05 +0000 (13:11 +0200)]
Release 1.8.0

8 years agoRelease 1.7.91
Sebastian Dröge [Tue, 15 Mar 2016 10:39:20 +0000 (12:39 +0200)]
Release 1.7.91

8 years agodecoder: h265: Fix offset calculation in codec_data parsing
Sreerenj Balachandran [Fri, 11 Mar 2016 15:44:07 +0000 (17:44 +0200)]
decoder: h265: Fix offset calculation in codec_data parsing

https://bugzilla.gnome.org/show_bug.cgi?id=762922

8 years agovaapidecodebin: don't handle jpeg decoding
Víctor Manuel Jáquez Leal [Wed, 9 Mar 2016 19:26:31 +0000 (20:26 +0100)]
vaapidecodebin: don't handle jpeg decoding

As JPEG decoder has been split and demoted, it cannot be handled by
vaapidecodebin

Added a fixme comment regarding the future removal of vaapidecode.

https://bugzilla.gnome.org/show_bug.cgi?id=734093

8 years agovaapidecode: split out jpeg decoder
Víctor Manuel Jáquez Leal [Wed, 9 Mar 2016 19:25:08 +0000 (20:25 +0100)]
vaapidecode: split out jpeg decoder

Split, as a different element, the JPEG decoder.

https://bugzilla.gnome.org/show_bug.cgi?id=734093

8 years agovaapidecode: register decoder with internal GType
Víctor Manuel Jáquez Leal [Wed, 9 Mar 2016 17:41:49 +0000 (18:41 +0100)]
vaapidecode: register decoder with internal GType

Don't expose the the vaapidecode GType, instead expose a function
which will register element.

This is the first step to split the decoder by codecs.

https://bugzilla.gnome.org/show_bug.cgi?id=734093

8 years agovaapidecode: remove unused function declaration
Víctor Manuel Jáquez Leal [Thu, 10 Mar 2016 11:47:49 +0000 (12:47 +0100)]
vaapidecode: remove unused function declaration

There is no need to pre-declare gst_vaapidecode_update_sink_caps(). And fixed
code-style of the other pre-declared functions.

8 years agobuild: git ignore gtkdoc generated files
Víctor Manuel Jáquez Leal [Wed, 9 Mar 2016 17:58:13 +0000 (18:58 +0100)]
build: git ignore gtkdoc generated files

8 years agobuild: handle git ignore in m4 directory
Víctor Manuel Jáquez Leal [Wed, 9 Mar 2016 17:55:39 +0000 (18:55 +0100)]
build: handle git ignore in m4 directory

8 years agovaapidecoder_h265: plug leak of h265 parsing info
Thiago Santos [Fri, 4 Mar 2016 23:17:54 +0000 (20:17 -0300)]
vaapidecoder_h265: plug leak of h265 parsing info

If something goes wrong while parsing, the info object is
being leaked

https://bugzilla.gnome.org/show_bug.cgi?id=763121

8 years agovaapidecoder_h264: plug leak of h264 parsing info
Thiago Santos [Fri, 4 Mar 2016 23:17:20 +0000 (20:17 -0300)]
vaapidecoder_h264: plug leak of h264 parsing info

If something goes wrong while parsing, the info object is
being leaked

https://bugzilla.gnome.org/show_bug.cgi?id=763121

8 years agoplugins: fix gstgl and vaapi memory leaks
Vineeth TM [Wed, 9 Mar 2016 02:03:28 +0000 (11:03 +0900)]
plugins: fix gstgl and vaapi memory leaks

1\ Unref gl_display and gl_window as soon they are not needed.
2\ Remove an unneeded display type check, since is handled by
   gst_vaapi_created_display_from_handle()
3\ Unref vaapi's display if the display cannot be bind to a GL API.

Modified-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>
https://bugzilla.gnome.org/show_bug.cgi?id=763354

8 years agovaapidisplay: Fix uninitialized value error for VA attribute
Vineeth TM [Wed, 9 Mar 2016 05:13:24 +0000 (14:13 +0900)]
vaapidisplay: Fix uninitialized value error for VA attribute

https://bugzilla.gnome.org/show_bug.cgi?id=763362

8 years agoplugins: proxy information from downstream caps
Víctor Manuel Jáquez Leal [Tue, 8 Mar 2016 09:47:56 +0000 (10:47 +0100)]
plugins: proxy information from downstream caps

Propagate to upstream the downstream information, such as fps, par, etc.

This will fix several "getcaps" critical warnings in gst-validate.

https://bugzilla.gnome.org/show_bug.cgi?id=763300

8 years agodecoder: vp9: Assign values for profile and bit_depth from frame header
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.

8 years agobuild: Dist gstreamer-vaapi.doap and configure.ac/autogen.sh
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

8 years agoRelease 1.7.90
Sebastian Dröge [Tue, 1 Mar 2016 17:23:51 +0000 (19:23 +0200)]
Release 1.7.90

8 years agoconfigure: Use AG_GST_SET_PACKAGE_RELEASE_DATETIME_WITH_NANO to set release date
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

8 years agovaapidecode: intersect with filter in getcaps()
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.

8 years agoAdd memset to initialize value for VAEncSliceParameterBufferJPEG
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

8 years agoAutomatic update of common submodule
Sebastian Dröge [Fri, 26 Feb 2016 10:42:46 +0000 (12:42 +0200)]
Automatic update of common submodule

From b64f03f to 6f2d209

8 years agobuild: add m4 directory
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

8 years agodecoder: hevc: Fill dependent slice segment headers while parsing
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

8 years agovaapidecode: use video decoder getcaps()
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.

8 years agoplugins: remove deprecated code
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.

8 years agovaapidecoder_h265: fix parsing of NALU aligned data
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

8 years agovaapidecoder_h264: fix parsing of NALU aligned data
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

8 years agovaapisink: Fix event,pad,structure memory leaks
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

8 years agoAdd icamerasrc as dmabuf capable peer element
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

8 years agovaapipluginbase: Fix structure memory leak
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

8 years agovaapidecode: Fix videocodec state memory leak
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

8 years agovaapisink: post message for application for unhandled keyboard/mouse events
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.

8 years agovaapidecode: Fix capsfeature memory leak
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

8 years agovaapisink: Fix capsfeature memory leak
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

8 years agovaapi: Fix various compiler warnings and disable -Wredundant-decls for now
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

8 years agoconfigure: Fix setting of extra compiler warning flags
Sebastian Dröge [Tue, 16 Feb 2016 12:36:39 +0000 (14:36 +0200)]
configure: Fix setting of extra compiler warning flags

8 years agolibs: fix build error
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

8 years agotests: simple-encoder: fix build error
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

8 years agovaapisink: Fix wrong caps advertising
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

8 years agoAutomatic update of common submodule
Thiago Santos [Fri, 5 Feb 2016 21:11:29 +0000 (18:11 -0300)]
Automatic update of common submodule

From e97c9bb to b64f03f

8 years agorename encoders to vaapi{codec}enc
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>
8 years agoUse new AG_GST_ARG_ENABLE_EXTRA_CHECKS #define
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>
8 years agobuild: remove vp9 parser check
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>
8 years agoBack to development
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>
8 years agoRelease 1.6.0
Víctor Manuel Jáquez Leal [Wed, 3 Feb 2016 15:53:41 +0000 (16:53 +0100)]
Release 1.6.0

8 years agolibs: fix compiler warnings
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>
8 years agodocs: update plugin documentation
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>
8 years agoresurrect gtk-doc machinery
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>
8 years agouse gst-common submodule
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>
8 years agoadd gst-common submodule
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>
8 years agoadd doap descriptor
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>
8 years agolibs: humongous code style fix
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>
8 years agolibs: small refactors to enhance the code style
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>
8 years agolibs: small code style fixes
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>
8 years agolibs: trivial comment style fixes
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>
8 years agolibs: avoid gst-indent mess up
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>
8 years agoplugins: fix code style
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>
8 years agoFix some more compiler warning
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

8 years agovaapi: fix 'ISO C90 forbids mixed declarations and code' compiler warnings
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

8 years agodecoder: vp9: Fix crop rectangle setting
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

8 years agovaapidecode: Fix renegotiation for resolution change
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.

8 years agoplugins: use the same pre-processor macro
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>
8 years agodecoder: update a deprecated function
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>
8 years agobuild: honor configure's cache
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>
8 years agobuild: use common version variables
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>
8 years agobuild: hard-code an unneeded macro
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>
8 years agobuild: refactorization of dependency tracking
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>
8 years agobuild: check for OpenGL either GLX or EGL are requested
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>
8 years agobuild: indent and add square braces
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>
8 years agobuild: upgrade autotools version dependency
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>
8 years agobuild: enhance string comparisons
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>
8 years agobuild: remove unused variables
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>
8 years agobuild: remove check for old version of gstreamer
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>
8 years agobuild: remove GStreamer's parsers checks
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>
8 years agobuild: add gstreamer-pbutils dependency
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>
8 years agobuild: fix variable declaration
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>
8 years agobuild: fix when HEVC decoder is disabled
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>
8 years agobuild: remove unused EGL specific sources
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>
8 years agobuild: remove check for GStreamer 1.2
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>
8 years agoRemove more video parser crufts
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>