Commit graph

204 commits

Author SHA1 Message Date
Sreerenj Balachandran
a14ed0a78e 0.5.10 2015-02-03 10:00:42 +02:00
Wind Yuan
667749c67e plugins: add support for dma_buf imports.
Allow imports of v4l2 buffers into VA surfaces for further operation
with vaapi plugins, e.g. vaapipostproc or vaapiencode_* elements.

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

[fixed memory leaks, ported to new dma_buf infrastructure, cleanups]
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2015-01-28 17:35:16 +01:00
Gwenole Beauchesne
1799b362a3 texture: drop support for VA/GLX interfaces.
The VA/GLX interfaces are obsolete. They used to exist for XvBA, and
ease of use, but they had other caveats to deal with. It's now better
to move on to legacy mode, whereby VA/GLX interop is two be provided
through (i) X11 Pixmap, and (ii) other modern means of buffer sharing.

https://bugzilla.gnome.org/show_bug.cgi?id=736711
2015-01-27 18:11:44 +01:00
Gwenole Beauchesne
74a080a8da libs: bump library major version. 2015-01-27 18:11:44 +01:00
Sreerenj Balachandran
58eefcac9a configure: echoing installation prefix path 2014-10-29 15:45:44 +02:00
Gwenole Beauchesne
48e5bcbe7b vaapisink: fix GstNavigation "key-press" / "key-release" events.
Fix arguments to XkbKeycodeToKeysym() for converting an X11 keycode
to a KeySym. In particular, there is no such Window argument. Also
make sure to check for, and use, the correct <X11/XKBlib.h> header
where that new function is defined. Otherwise, default to the older
XKeycodeToKeysym() function.
2014-09-24 13:49:06 +02:00
Gwenole Beauchesne
0504986408 Bump version for development. 2014-07-29 13:24:52 +02:00
Gwenole Beauchesne
1afcede093 0.5.9. 2014-07-28 18:46:27 +02:00
Sreerenj Balachandran
883ef9d436 configure: allow builds against GStreamer git (1.5.x).
https://bugzilla.gnome.org/show_bug.cgi?id=733688
2014-07-28 15:09:58 +02:00
Gwenole Beauchesne
580100d749 configure: fix build with GStreamer 1.4.0 release. 2014-07-28 14:20:33 +02:00
Gwenole Beauchesne
690183a8fb debian: fix packaging for new naming scheme. 2014-07-28 14:02:46 +02:00
Gwenole Beauchesne
a6737ad43a configure: mark support for GStreamer < 1.2 as deprecated.
Supporting anything thing below GStreamer 1.2 is asking for trouble
for keeping up with the required facilities to make efficient pipelines.
Users are invited to upgrade to the very latest GStreamer 1.2.x release,
at the minimum.
2014-07-28 11:39:11 +02:00
Gwenole Beauchesne
f79337c714 configure: mark support for GStreamer 0.10 as obsolete.
Support for GStreamer 0.10 is obsolete. i.e. it is no longer supported
and may actually be removed altogether for a future release. There is
no real point to maintain a build for such an ancient GStreamer version
that is not even supported upstream.
2014-07-28 11:35:24 +02:00
Gwenole Beauchesne
1175ecb412 build: mention that support for GStreamer 0.10 is deprecated. 2014-07-03 19:43:05 +02:00
Gwenole Beauchesne
700fd242cc build: fix for GStreamer 0.10. 2014-07-03 19:43:04 +02:00
Gwenole Beauchesne
3af6b0b8a0 plugins: add built-in video parsers as "vaapiparse" element.
The built-in video parsers elements are built into a single DSO named
libgstvaapi_parse.so. The various video parsers could be accessed as
vaapiparse_CODEC.

For now, this only includes a modified version of h264parse so that to
support H.264 MVC encoded streams.
2014-06-13 17:17:07 +02:00
Sreerenj Balachandran
ee6d1b7bd1 build: fix conditional compilation of VP8 decoder.
https://bugzilla.gnome.org/show_bug.cgi?id=729170

[added check for VASliceParameterBufferBase fields]
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2014-05-09 14:41:52 +02:00
Gwenole Beauchesne
de6a980065 vp8: allow compilation without the built-in libvpx.
The built-in libvpx serves multiple purposes, among which the most
important ones could be: track the most up-to-date, and optimized,
range decoder; allow for future hybrid implementations (non-VLD);
and have a completely independent range decoder implementation.
2014-04-21 17:53:06 +02:00
Gwenole Beauchesne
b36eade7f3 vp8: use range decoder from libvpx.
Add libvpx submodule that tracks the upstream version 1.3.0. This is
needed to build a libgstcodecparsers_vpx.so library with all symbols
placed into the GSTREAMER namespace.
2014-04-18 20:37:25 +02:00
Zhao, Halley
029bae0b6a Add initial VP8 decoder.
https://bugzilla.gnome.org/show_bug.cgi?id=722761

[complete overhaul, fixed support for resolution changes]
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2014-04-18 20:03:44 +02:00
Gwenole Beauchesne
b024e6940b build: fix pkgconfig file names (again).
It turns out it is more convenient to have only pkgconfig files named
after the installed GStreamer API version (1.0) instead of using all
possible subsequent names from that (1.0, 1.2, 1.4). i.e. they conflict
altogether anyway, so align pkgconfig file names to that.
2014-02-19 06:13:41 +01:00
Gwenole Beauchesne
b763fdac2c Bump version for development. 2014-01-24 11:27:30 +01:00
Gwenole Beauchesne
b545c6fcbc 0.5.8. 2014-01-23 19:36:14 +01:00
Gwenole Beauchesne
ed302d091e Bump library major version.
Bump the library major version due to API/ABI changes that occurred in
the imaging API. In particular, GstVaapiDisplay interfaces no longer
expose any GstCaps but provide GArray based ones e.g. to determine the
set of supported decode/encode profiles.
2014-01-22 19:07:30 +01:00
Lionel Landwerlin
e66179dffb pkgconfig: plugin dir should use PKG version not API version.
Fix the pluginsdir and includedir variables in the generated pkgconfig
(.pc) files. The location needs to be built with the PKG version in
mind instead of the API version.

While we are at it, also fix the PKG version for GStreamer >= 1.3.

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

[additional fixes for includedir and pkg requirements]
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2014-01-15 11:21:32 +01:00
Gwenole Beauchesne
bc020c05f9 vaapiencode: add initial support for GStreamer 0.10. 2013-11-27 17:23:56 +01:00
Gwenole Beauchesne
f82deaf10c libs: always use built-in videoutils for GStreamer 0.10.
GStreamer 0.10.36 is the latest and ultimate version to be released
from the GStreamer 0.10 branch. i.e. no further releases are to be
made. So, we can safely enable the built-in videoutils replacement
now that they are in sync with the 0.10 branch.
2013-11-27 17:23:56 +01:00
Matthieu Bouron
76174922bc Fix build with GStreamer >= 1.3.
http://bugzilla.gnome.org/show_bug.cgi?id=715183

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-11-27 15:08:40 +01:00
Gwenole Beauchesne
98fa9e7d59 configure: disable encoders with GStreamer 0.10.
Don't try to build video encoders for GStreamer 0.10. Support code is
not there yet, and probably will never for such an ancient version.
2013-11-26 17:56:59 +01:00
Wind Yuan
8174a35737 Add initial infrastructure for video encoding.
Add initial API for video encoding: only basic interfaces and small
encoder objects are implemented so far.

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-11-24 16:52:05 +01:00
Wind Yuan
99947d0592 libs: add generic bitstream writer.
GstBitWriter provides a bit writer that can write any number of bits
to a pre-allocated memory buffer. Helper functions are also provided
to write any number of bits from 8, 16, 32 and 64 bit variables.

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-11-24 16:52:05 +01:00
Gwenole Beauchesne
24835654ee Bump version for development. 2013-11-22 11:56:51 +01:00
Gwenole Beauchesne
e3bd3b1dd3 0.5.7. 2013-11-21 23:52:43 +01:00
Gwenole Beauchesne
29270e3af6 configure: automatically detect GStreamer API version.
Automatically detect GStreamer API version. The --with-gstreamer-api
configure option now defaults to "autodetect" and configure then tries
to derive the GStreamer API version from the highest version based on
what pkg-config --modversion would report.

https://bugzilla.gnome.org/show_bug.cgi?id=711657
2013-11-18 18:35:22 +01:00
Gwenole Beauchesne
6b3c08a729 Fix detection and packaging of GStreamer 1.2.x builds.
The GStreamer 1.2.x packages sticked to the naming convention for 1.0.x
packages, i.e. -1.0 suffix. However, for gstreamer-vaapi packaging
purposes, update the versioning to -1.2 suffix instead.
2013-09-27 14:24:02 +02:00
Víctor Manuel Jáquez Leal
f75762d910 plugins: initial port to GStreamer 1.2.
Port vaapidecode and vaapisink plugins to GStreamer API >= 1.2. This
is rather minimalistic so that to test the basic functionality.

Disable vaapipostproc plugin for now as further polishing is needed.
Also disable GstVideoContext interface support since this API is now
gone in 1.2.x. This is preparatory work for GstContext support.

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

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-09-27 14:15:51 +02:00
Gwenole Beauchesne
0a4582de6f Bump version for development. 2013-08-31 16:00:05 +02:00
Gwenole Beauchesne
0687224796 0.5.6. 2013-08-31 15:48:24 +02:00
Wind Yuan
621d48a5b1 configure: fix detection of VA/JPEG decoding API.
Fix detection of VA/JPEG decoding API with non-standard libva packages.
More precisely, some packages were shipping with a <va/va.h> header that
did not include <va/va_dec_jpeg.h>.

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

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-08-29 19:44:48 +02:00
Gwenole Beauchesne
f09008a8d1 Add initial infrastructure for video processing.
Add initial API for video processing: only scaling and color format
conversion operations are supported.
2013-08-23 19:00:38 +02:00
Gwenole Beauchesne
0af0849a92 x11: implement pixmap rendering with RENDER extension.
Use hardware accelerated XRenderComposite() function, from the RENDER
extension, to blit a pixmap to screen. Besides, this can also support
cropping and scaling.
2013-07-22 15:45:10 +02:00
Gwenole Beauchesne
07e890e818 Bump version for development. 2013-07-17 11:07:39 +02:00
Gwenole Beauchesne
415e65a980 0.5.5. 2013-07-15 14:47:01 +02:00
Gwenole Beauchesne
abd432d7b1 Bump library major version.
Bump the library major version due to API/ABI changes that occurred in
the imaging API. In particular, GstVaapiImageFormat type was replaced
with the standard GstVideoFormat type. All dependent APIs were updated
to match this change.
2013-07-15 14:05:45 +02:00
Gwenole Beauchesne
800b66f071 mpeg2: cope with latest codecparser changes.
Fix build with newer MPEG-2 codecparser where GstMpegVideoPacket are
used in individual header parsers. Also use the new slice parsing API.
2013-07-05 17:57:47 +02:00
Lionel Landwerlin
8e0d65b327 configure: use GST_PLUGIN_PATH_1_0 instead of GST_PLUGIN_PATH for Gst 1.0.
jhbuild sets $GST_PLUGIN_PATH_1_0 which overrides $GST_PLUGIN_PATH.

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

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-06-26 18:21:24 +02:00
Gwenole Beauchesne
9f410af4a3 Bump version for development. 2013-06-14 13:41:14 +02:00
Gwenole Beauchesne
1e1af8a5df 0.5.4. 2013-06-14 11:47:50 +02:00
Gwenole Beauchesne
4559f691a1 configure: always build the MPEG-4 parser.
Always build the MPEG-4 parser for now as there are also core fixes
included in the parser that cannot be tested for with API checks.
2013-06-14 11:45:11 +02:00
Gwenole Beauchesne
bcabfcc08b configure: add --enable-builtin-codecparsers [default="yes"] option.
Add flag to have all codecparsers built-in, thus ensuring that the
resulting binaries have all the necessary bug fixes and this is what
the QA has been testing anyway.

Of course, for a completely up-to-date Linux distribution, you could
also opt for --disable-builtin-codecparsers and use the system ones.
Though, some core fixes could be missing, and those cannot be tested
for with API checks.
2013-06-14 11:45:11 +02:00