Gwenole Beauchesne
b865d4a740
Add initial VC-1 decoder.
2012-01-16 11:40:51 +01:00
Gwenole Beauchesne
49b4702fb6
Add initial MPEG-2 decoder.
2012-01-16 11:40:50 +01:00
Gwenole Beauchesne
8f0eda8964
Allow conditional build of GStreamer/FFmpeg bitstream parsers.
2012-01-16 11:40:50 +01:00
Gwenole Beauchesne
6b03d30162
vaapiplugin: fix gst_vaapi_ensure_display() to use system defaults.
...
This ensures the display name provided to gst_vaapi_display_*_new()
maps to the system defaults, instead of forcing "" that could be different
from the current DISPLAY name.
2012-01-12 16:09:08 +01:00
Nicolas Dufresne
b7e5a48e5e
vaapiupload: only set caps on newly created buffers.
...
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2012-01-12 16:09:08 +01:00
Gwenole Beauchesne
0385750fa7
vaapisink: ensure VA display in GstBaseSink::start() hook.
...
This ensures a VA display is ready by the time upstream elements request
for it.
2012-01-12 16:09:08 +01:00
Nicolas Dufresne
c432e82e44
vaapisink: don't leak GL texture.
...
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2012-01-12 16:09:08 +01:00
Gwenole Beauchesne
8866a7c223
vaapisink: fix calculation of render region.
2012-01-11 09:38:57 +01:00
Gwenole Beauchesne
b1aee91aa0
vaapisink: automatically fit video to window.
2012-01-11 09:38:56 +01:00
Gwenole Beauchesne
3ca1d0820c
vaapisink: implement GstXOverlay::set_render_rectangle().
2012-01-11 09:38:56 +01:00
Gwenole Beauchesne
48cefaf9ce
vaapidecode: fix deinitialization order.
2012-01-05 16:26:49 +01:00
Gwenole Beauchesne
f0486c5716
vaapiupload: use new gst_vaapi_append_surface_caps() helper.
...
This also fixes extra structures, beyond the one at index 0, to hold
the right additional values.
2012-01-05 11:04:29 +01:00
Gwenole Beauchesne
0de8b8cce1
vaapiupload: fix sink (YUV) caps to not report type and opengl fields.
2012-01-05 11:04:29 +01:00
Gwenole Beauchesne
6ca190b4c5
vaapidownload: add new plugin to download pixels from VA surfaces.
2012-01-05 11:04:29 +01:00
Gwenole Beauchesne
872694fda5
vaapipluingutils: add helper to append surface caps to YUV caps.
2012-01-05 11:04:29 +01:00
Gwenole Beauchesne
12c85f69ff
vaapiupload: fix memory leak in _init() function.
2012-01-03 18:16:35 +01:00
Gwenole Beauchesne
42fa974391
Rename vaapiconvert element to vaapiupload.
2012-01-03 14:34:09 +01:00
Gwenole Beauchesne
ac7c4cfe78
surface: apply composition to the parent context, if requested.
2011-12-14 14:40:37 +01:00
Gwenole Beauchesne
9c8c33857f
Fix warnings.
2011-12-13 15:59:02 +01:00
Gwenole Beauchesne
a4244820af
Rename gst_vaapi_surface_update_composition() to
...
gst_vaapi_surface_set_subpictures_from_composition().
2011-12-13 15:51:58 +01:00
Thibault Saunier
e4d7e90568
vaapisink: handle GstVideoOverlayComposition planes.
...
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2011-12-12 18:38:51 +01:00
Gwenole Beauchesne
55738da35b
image: add gst_vaapi_image_format_from_video() helper.
2011-12-12 18:32:29 +01:00
Gwenole Beauchesne
9337fb9a74
image: allow partial updates.
2011-12-12 18:32:29 +01:00
Nicolas Dufresne
cbf81d7d51
Add missing video context queries.
...
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2011-12-12 15:02:15 +01:00
Gwenole Beauchesne
0df67b5e89
vaapiplugin: include local build dir to CFLAGS for generated files.
2011-12-09 10:45:20 +01:00
Sreerenj Balachandran
809e087cca
vaapidecode: return sink caps template if decoder is in NULL state.
...
Otherwise, the decoder would always create its own X display instead
of probing it from the downstream element, which is not reliable.
e.g. DISPLAY is not :0 or when running on Wayland.
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2011-12-08 15:48:42 +01:00
Gwenole Beauchesne
dc08d1eae0
vaapiplugin: properly set surface type to "vaapi" in caps.
2011-12-08 15:44:09 +01:00
Nicolas Dufresne
36e0f582a8
vaapiplugin: properly set opengl support in caps.
...
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2011-12-08 15:13:42 +01:00
Nicolas Dufresne
bb22317e39
vaapiplugin: allocate GLX buffers when supported.
...
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2011-12-08 15:13:42 +01:00
Nicolas Dufresne
b170d1a982
Don't use downstream buffer allocation.
...
With the new video/x-surface abstraction, we can't rely on having a VA
specific sink downstream. Also, there was no particular reason to do that.
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2011-12-08 14:58:58 +01:00
Nicolas Dufresne
075374cda3
Change caps to use new video/x-surface generic type.
...
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2011-12-08 14:58:58 +01:00
Nicolas Dufresne
99c5d18f41
Port to GstVideoContext interface.
...
This new interface allows for upstream and downstream display sharing
that works in both static and dynamic pipelines.
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2011-12-08 14:58:58 +01:00
Gwenole Beauchesne
2df43791d4
vaapisink: use GST_ERROR to print error messages.
2011-12-08 14:57:36 +01:00
Gwenole Beauchesne
f3d89f8bc0
vaapiplugin: link against VA/GLX when enabled.
2011-12-08 13:30:51 +01:00
Gwenole Beauchesne
04d4c9f225
Add Intel copyright information.
2011-12-07 19:09:55 +01:00
Gwenole Beauchesne
513b9c700b
vaapisink: allow compatibility with gst-plugins-base < 0.10.31.
2011-12-07 19:05:50 +01:00
Sreerenj Balachandran
820c52f953
vaapisink: replace the deprecated xoverlay API with the new one.
...
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2011-12-07 18:02:22 +01:00
Nicolas Dufresne
48b3d02143
Group all plugins into the same bundle
...
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2011-12-07 14:33:59 +01:00
Nicolas Dufresne
394c57454c
Update license in plugin definition
...
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2011-12-07 13:54:10 +01:00
Gwenole Beauchesne
51fd6f1f50
vaapiconvert: fix some warnings.
2011-10-19 14:49:39 +02:00
Gwenole Beauchesne
fcaad720fb
Update with my current e-mail address.
2011-10-19 14:49:34 +02:00
warly
08e8f3e671
move plugins to LGPL v2.1+
2011-10-19 14:32:14 +02:00
Gwenole Beauchesne
6b1107cef7
vaapidecode: fix sink caps to not expose size information.
...
This fixes this particular issue:
GStreamer-WARNING **: pad vaapidecode0:sink returned caps which are not
a real subset of its template caps
2011-09-14 13:10:25 +02:00
Gwenole Beauchesne
c94dde647c
vaapidecode: fix decoding of MPEG-2 PS files.
2011-09-14 11:40:32 +02:00
Gwenole Beauchesne
64defe9615
vaapiconvert: fix direct-rendering caps detection.
2011-09-08 14:51:30 +02:00
Gwenole Beauchesne
6e9a816c48
vaapiconvert: warn when surface failed to be updated with image.
2011-09-08 13:27:47 +02:00
Gwenole Beauchesne
dd879638ca
vaapiconvert: fix autodetection for vaDeriveImage() support.
2011-09-06 18:37:11 +02:00
Gwenole Beauchesne
0a07620f37
vaapiconvert: fix memory leak (VA surface image).
2011-09-06 18:37:11 +02:00
Gwenole Beauchesne
8589e8279c
vaapiconvert: fix direct-rendering mode.
2011-09-06 18:37:11 +02:00
Gwenole Beauchesne
f601d133cc
vaapiconvert: protect access to direct_rendering.
2011-09-06 18:37:11 +02:00
Gwenole Beauchesne
dcf44d0809
vaapiconvert: use gst_vaapi_display_lookup_downstream() helper to get a VA display.
2011-09-06 18:37:11 +02:00
Gwenole Beauchesne
00bb1ca6b4
Add Intel copyright information.
2011-08-01 14:15:39 +02:00
Gwenole Beauchesne
f2906b7ad0
Fix decoding of MPEG-2 TS files.
2011-07-22 15:42:27 +02:00
Gwenole Beauchesne
41e3e88c3a
Fix build with libva headers not in a standard include dir.
2011-07-21 13:16:45 +02:00
Gwenole Beauchesne
1701ce3107
Update copyright notice.
2011-06-14 13:54:07 +02:00
gb
028ed08f8c
Render pretty background only in use-reflection=true mode.
2010-09-20 12:55:48 +02:00
gb
643d35e87a
Fix upscaling in foreign window (Totem).
2010-09-20 12:55:47 +02:00
gb
6b8f76b2ce
Soft validate caps since we only care about video/x-vaapi-surface as input. _setcaps() will check for other fields.
2010-09-20 12:55:47 +02:00
gb
28f85a916d
Fix video rendering rect within an embedder window (Totem).
2010-09-20 12:55:47 +02:00
gb
643d08ef23
Disable GLX rendering when vaapisink uses a foreign X window.
2010-09-20 12:55:47 +02:00
gb
9cfa005887
Simplify GLX rendering code.
2010-09-20 12:55:47 +02:00
gb
f2b8dc69ac
Wait for at most one second for a VA surface to become available.
2010-09-20 12:55:47 +02:00
gb
adfed50a90
Fix VC-1 decoding through the playbin2 pipeline.
2010-09-20 12:55:46 +02:00
gb
acadb2f995
Improve debug info for gst_vaapisink_ensure_render_rect().
2010-09-20 12:55:46 +02:00
gb
7f44c87a95
Add debug info for _show_frame().
2010-09-20 12:55:46 +02:00
gb
13e43aa9b6
Debug video & display PARs.
2010-09-20 12:55:46 +02:00
gb
3a7c049829
Use XGetGeometry() to retrieve the window size.
2010-09-20 12:55:45 +02:00
gb
b3dc91b1d9
Move code around.
2010-09-20 12:55:45 +02:00
gb
d16dda6b61
Ensure VA display is created prior to initializing the window from a specific XID. Also move code down.
2010-09-20 12:55:45 +02:00
gb
76661d73d1
Fix GstVaapiDisplay refcounting in vaapidecode.
2010-09-20 12:55:45 +02:00
gb
99b1adce4f
Fix render rect when the foreign window size changes.
2010-09-20 12:55:45 +02:00
gb
601db12ccb
Add GstXOverlay interface to vaapisink (e.g. for Totem).
2010-09-20 12:55:45 +02:00
gb
35cd2b1ffe
Cosmetics.
2010-09-20 12:55:45 +02:00
gb
6258c468f9
Fix vaapidecode to expose the HW supported caps only.
2010-09-20 12:55:45 +02:00
gb
f53a5781ad
Initialize decoder earlier.
2010-09-20 12:55:45 +02:00
gb
2d90a2dd3a
Fix integration within the playbin2 pipeline.
2010-09-20 12:55:45 +02:00
gb
909d1f96a3
Raise VA-API plugins ranks.
2010-09-20 12:55:45 +02:00
gb
af1fd4b910
Use fixed caps on the src pad, they are not meant to change from video/x-vaapi-surface.
2010-09-20 12:55:45 +02:00
gb
39dbd70c8f
Expose VA display through GstVaapiVideoBuffer.
2010-09-20 12:55:45 +02:00
gb
710ab89fca
Simplify gst_vaapidecode_set_caps() and fix memory leak.
2010-09-20 12:55:45 +02:00
gb
608d2d071b
Improve plugin details.
2010-09-20 12:55:44 +02:00
gb
80e5b1ba17
Factor out VA surface caps.
2010-09-20 12:55:44 +02:00
gb
4a485200b9
Add gst_vaapidecode_ensure_display() helper for set-caps.
2010-09-20 12:55:44 +02:00
gb
73c80aa1ed
Lower plugins rank for now since playbin2 auto-plugging is not working properly.
...
User applications will have to create their own pipeline or with some hacks around playbin2.
2010-09-20 12:55:44 +02:00
gb
e1e1c253e1
Don't build plugins with SONAME. Make them plain *.so.
2010-09-20 12:55:44 +02:00
gb
f6314162e0
Rename gst_vaapi_decoder_ffmpeg_new_from_caps() to plain gst_vaapi_decoder_ffmpeg_new().
2010-09-20 12:55:44 +02:00
gb
e39709453e
Add more aliases for MPEG-4 decoding.
2010-09-20 12:55:43 +02:00
gb
477e3b8530
Add gst_vaapi_decoder_ffmpeg_new_from_caps() helper.
2010-09-20 12:55:42 +02:00
gb
587b39cdd5
Fix VC-1 detection.
2010-09-20 12:55:42 +02:00
gb
a556e08e83
Decode as many surfaces as possible in gst_vaapidecode_step().
2010-09-20 12:55:42 +02:00
gb
a4d201aaf9
Drop excessive threading that over-complicates synchronisation.
...
MPEG-2 & H.264 videos now play but there are other problems (timestamps).
2010-09-20 12:55:42 +02:00
gb
e7c9845374
Complete initialization of the GstVaapiVideoBuffer. Some frames start to show up.
2010-09-20 12:55:41 +02:00
gb
73b50487f3
Add missing GstBaseSink::buffer_alloc() override. i.e. make sure
...
to allocate a GstVaapiVideoBuffer instead of a plain GstBuffer
from the peer pad.
2010-09-20 12:55:41 +02:00
gb
3f3055af1f
Add FFmpeg/VAAPI decoder for the new `vaapidecode' element.
2010-09-20 12:55:41 +02:00
gb
fb4fffd5cb
Rename to gst/ as sys/ was too vague.
2010-03-30 07:46:47 +00:00