Commit graph

68 commits

Author SHA1 Message Date
Gwenole Beauchesne
2b0a4a0304 image: clean image API up.
Don't expose functions that reference a GstVaapiImageRaw, those are
meant to be internal only for implementing subpictures sync. Also add
a few private definitions to avoid functions calls for retrieving
image size and format information.
2013-07-26 13:16:52 +02:00
Gwenole Beauchesne
e183ea1290 image: add gst_vaapi_image_copy() helper.
Add gst_vaapi_image_copy() helper function to copy images of same format
and size.
2013-07-26 13:16:52 +02:00
Gwenole Beauchesne
4a8a80061f libs: add and expose gst_vaapi_video_format_to_string() helper.
This is just a wrapper over gst_video_format_to_string() for older
GStreamer 0.10 builds.
2013-07-22 15:22:34 +02:00
Gwenole Beauchesne
7fa4973f8a Fix new video format API.
Fix new internal video format API, based on GstVideoFormat, to not
clobber with system symbols. So replace the gst_video_format_* prefix
with gst_vaapi_video_format_ prefix, even if the format type remains
GstVideoFormat.
2013-07-15 14:42:33 +02:00
Wind Yuan
89321cd3c4 image: add support for raw YUY2/UYVY image copies.
Implement raw image copies for YUY2 format. Add support for UYVY format
too, with the same copy function as for YUY2. Even though components
ordering differs, copying line strides is essentially the same.

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

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-07-11 19:09:53 +02:00
Gwenole Beauchesne
97c0316fe4 Add more video formats.
Add new video format mappings to VA image formats:
- YUV: packed YUV (YUY2, UYVY), grayscale (Y800) ;
- RGB: 32-bit RGB without alpha channel (XRGB, XBGR, RGBX, BGRX).
2013-07-10 17:03:47 +02:00
Gwenole Beauchesne
d469b7274c image: fix debug message with video format.
Fix debug message string with image format expressed with GstVideoFormat
instead of the obsolete format that turned out to be a fourcc.

This is a regression from git commit e61c5fc.
2013-07-10 17:03:47 +02:00
Gwenole Beauchesne
40ac87b45e libs: use GstVideoInfo wherever possible.
In particular, use gst_video_info_from_caps() helper function in VA image
for implementating gst_vaapi_image_get_buffer() [vaapidownload] and
gst_vaapi_image_update_from_buffer() [subpictures] in GStreamer 0.10 builds.
2013-07-09 17:16:35 +02:00
Gwenole Beauchesne
e61c5fc3d1 libs: port to new video format API. 2013-07-09 17:16:35 +02:00
Wind Yuan
b3525c824a image: fix wrong check for rect bounds in copy_image(). 2013-06-14 13:50:47 +02:00
Gwenole Beauchesne
67eea92044 libs: drop GST_VAAPI_IS_xxx() helper macros.
Drop obsolete GST_VAAPI_IS_xxx() helper macros since we are no longer
deriving from GObject and so those were only checking for whether the
argument was NULL or not. This is now irrelevant, and even confusing
to some extent, because we no longer have type checking.

Note: this incurs more type checking (review) but the libgstvaapi is
rather small, so this is manageable.
2013-05-23 18:15:48 +02:00
Gwenole Beauchesne
6c46179709 libs: use GstVaapiObject for VA objects. 2013-05-07 17:51:27 +02:00
Sreerenj Balachandran
51151e7aa1 Add initial support for GStreamer 1.0.
This integrates support for GStreamer API >= 1.0 only in the libgstvaapi
core decoding library. The changes are kept rather minimal here so that
the library retains as little dependency as possible on core GStreamer
functionality.

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-04-10 14:58:16 +02:00
Gwenole Beauchesne
c38c0853eb image: fix GstVaapiImage map and unmap.
Fix gst_vaapi_image_map() to return TRUE and the GstVaapiImageRaw
structure correctly filled in if the image was already mapped.
Likewise, make gst_vaapi_image_unmap() return TRUE if the image
was already unmapped.
2012-11-20 14:38:19 +01:00
Gwenole Beauchesne
61cc02f54b libs: fix build in strict ISO C mode. 2012-09-07 16:23:42 +02:00
Gwenole Beauchesne
c6d64527b5 image: don't use (void *) pointer arithmetic. 2012-09-07 11:58:35 +02:00
Gwenole Beauchesne
d9c57a236d Fix a few documentation issues. 2012-04-02 13:06:15 +02:00
Gwenole Beauchesne
de7432f712 image: fix source stride in picture copy. 2012-02-15 14:08:44 +01:00
Gwenole Beauchesne
0fb1147d9c Add header for system-dependent definitions. 2012-01-30 19:52:10 +01:00
Gwenole Beauchesne
92f11799d1 legal: fix year for some copyright notices. 2012-01-16 11:40:51 +01:00
Gwenole Beauchesne
1594d99d55 legal: add Intel copyright on modified files. 2012-01-16 11:40:51 +01:00
Gwenole Beauchesne
14cc1cf061 legal: fix copyright notices to include "Copyright" term. 2012-01-16 11:40:51 +01:00
Gwenole Beauchesne
7f8eaa6cbf image: add helpers to extract pixels to user buffers. 2012-01-05 10:29:48 +01:00
Gwenole Beauchesne
13f00c67e6 image: simplify initialization of raw images from video buffers. 2012-01-04 11:34:34 +01:00
Gwenole Beauchesne
ad390f3569 image: fix update from NV12 buffers. 2012-01-04 11:32:21 +01:00
Gwenole Beauchesne
efcdec08fb image: allow updates from GstVaapiImageRaw. 2011-12-12 18:32:29 +01:00
Gwenole Beauchesne
9337fb9a74 image: allow partial updates. 2011-12-12 18:32:29 +01:00
Gwenole Beauchesne
857a024c62 Fix gst_vaapi_image_new_with_image(). 2011-09-08 14:51:30 +02:00
Gwenole Beauchesne
1701ce3107 Update copyright notice. 2011-06-14 13:54:07 +02:00
gb
4754317e70 Relicense gst-libs/ code to LGPL v2.1+. 2010-09-20 12:55:42 +02:00
gb
6b56ca0068 Move GST_VAAPI_DISPLAY_VADISPLAY() and GST_VAAPI_DISPLAY_{LOCK,UNLOCK}() to gstvaapidisplay_priv.h. 2010-04-01 09:47:59 +00:00
gb
05a1ed2d23 Try to not reference VA-API types directly. 2010-03-30 07:39:16 +00:00
gb
6ad73da390 Fix return value on error (though it's the same in the end). 2010-03-25 13:21:19 +00:00
gb
1703ef2aca Restore the gst_vaapi_{surface,image,subpicture}_get_id() interfaces. 2010-03-25 09:49:17 +00:00
gb
2ecadd45b8 Rename to GST_VAAPI_OBJECT_DISPLAY(). 2010-03-24 17:40:19 +00:00
gb
9961c03c6a All GstVaapiID are initialized to GST_VAAPI_ID_NONE by default.
Besides, all GstVaapiObject derived class shall initialize "id" to a valid value.
2010-03-24 17:38:23 +00:00
gb
520f7ac5b6 Include gstvaapicompat.h in source files only, not headers. 2010-03-24 16:25:56 +00:00
gb
4f7af960cb Fix g_warning() invocation. 2010-03-24 15:12:56 +00:00
gb
9713d1a950 Add support for AYUV format. 2010-03-24 14:46:33 +00:00
gb
a91206bbc1 Move "id" down to the GstVaapiObject base. 2010-03-24 13:19:58 +00:00
gb
63add8fd63 Drop useless include (<va/va_backend.h>). 2010-03-24 08:35:27 +00:00
gb
b8b82d3337 Move private definitions and accessors to gstvaapiobject_priv.h. 2010-03-24 08:32:12 +00:00
gb
755f198a74 Fix short descriptions. 2010-03-24 08:16:32 +00:00
gb
2155318d12 Make GstVaapi{Surface,Image,Subpicture} derive from a GstVaapiObject. 2010-03-23 16:21:28 +00:00
gb
b271ebd760 Drop introspection annotations since they require gtk-doc >= 1.12. 2010-03-23 13:32:36 +00:00
gb
95edba8907 Improve debugging messages. 2010-03-23 10:49:33 +00:00
gb
d63f196c73 Add tedious documentation. 2010-03-19 15:45:21 +00:00
gb
55b45d964d Fix gst_vaapi_image_create() from a foreign VA image. 2010-03-18 15:52:20 +00:00
gb
ea2c6c502c Add gst_vaapi_surface_derive_image() API. 2010-03-18 15:28:59 +00:00
gb
087b1dabda Split map/unmap functions into internal functions that don't check preconditions. 2010-03-18 12:59:55 +00:00