gb
da3948bdeb
Use a recursive mutex so that a single thread can lock
...
several times. This fixes decoding of MPEG-2 and H.264
because those created a GstVaapiContext later through
avcodec_decode_video() that was a protected call.
2010-09-20 12:55:32 +02:00
gb
a203d19a35
Add initial (multithreaded) decoder based on FFmpeg.
...
There are tons of bugs left:
- Decoder API not nice enough with error conditions
- FFmpeg parser is sometimes broken
- Packets queue can be lost
2010-04-23 16:05:58 +00:00
gb
5fb146c298
Add surface proxy that holds a reference to the parent surface
...
and that returns the surface to that context on destruction.
2010-04-23 16:00:50 +00:00
gb
ecf60d2284
Add VA context abstraction.
2010-04-23 15:59:31 +00:00
gb
6cb6c387e9
Fix VA profiles definitions for gst_vaapi_profile_get_codec() to work.
2010-04-23 10:58:19 +00:00
gb
b0493e729c
Add a means to cap the number of objects allocated in the pool.
2010-04-21 15:03:31 +00:00
gb
30fbcb1ee8
Add VA entrypoint abstraction.
2010-04-21 15:02:23 +00:00
gb
508edba9a0
Add VA profile abstraction.
2010-04-20 13:36:04 +00:00
gb
fa11094655
Fix OpenGL rendering on G45 systems.
2010-04-20 07:51:23 +00:00
gb
d1709fef62
Fix gl_create_context() to find a GLXFBConfig compatible with the parent GL context.
2010-04-16 13:47:30 +00:00
gb
b8aadb9e82
Fix TFP logic and simplify the FBO model. i.e. it's not necessary
...
to create another texture (and storage) for the TFP, simply a new texture name.
2010-04-02 11:27:23 +00:00
gb
8e6dea5b74
Fix get-out conditions.
2010-04-01 16:11:54 +00:00
gb
3ddab3f253
The shared GL context in GstVaapiTexture is only useful for cases
...
where TFP+FBO are used, thus avoiding the need fully preserve the states
and call into glGet*() functions that need synchronization.
2010-04-01 15:38:59 +00:00
gb
9075c8d23d
Shorter structs.
2010-04-01 13:55:19 +00:00
gb
7edf8c9bb7
Make more helpers internal, thus reducing .text size further. Add gst_vaapi_display_x11_get_screen() helper along the way.
2010-04-01 13:41:24 +00: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
702f844a7e
Improve handling of GL contexts.
2010-03-31 15:25:19 +00:00
gb
ea1fdba723
Fix build with VA-API < 0.30.
2010-03-30 13:05:31 +00:00
gb
28f73fb582
Enable build without VA/GLX extensions. i.e. fallback to TFP + FBO.
2010-03-30 13:01:34 +00:00
gb
502dec7c1c
Add TFP and FBO helpers.
2010-03-30 12:59:15 +00:00
gb
4ff830812f
Cosmetics. Make vaapi_check_status() use GST_DEBUG() for error messages.
2010-03-30 12:55:27 +00:00
gb
c58a45f099
Use a shorter function name.
2010-03-30 08:13:34 +00:00
gb
a1dbe90077
Add gst_vaapi_surface_query_status() wrapper.
2010-03-30 08:11:50 +00:00
gb
05a1ed2d23
Try to not reference VA-API types directly.
2010-03-30 07:39:16 +00:00
gb
201a7c9ce1
Use a projection suitable for rotation around the Y axis.
2010-03-29 15:51:54 +00:00
gb
1165419fd0
Add glXSwapBuffers() workaround for NVIDIA.
2010-03-29 13:40:27 +00:00
gb
9255310311
Fix texture rendering.
2010-03-29 12:51:38 +00:00
gb
ab8b90aa59
Fix documentation.
2010-03-29 11:25:20 +00:00
gb
dd92195093
Add gst_vaapi_window_glx_put_texture() helper.
2010-03-29 10:40:26 +00:00
gb
504dc9bf98
Fix typos.
2010-03-29 09:09:30 +00:00
gb
10c454e801
Add initial VA/GLX texture abstraction though the API is not good enough yet.
2010-03-26 16:52:07 +00:00
gb
9981f37de7
Add gst_vaapi_object_{,un}lock_display() helpers.
2010-03-26 15:22:00 +00:00
gb
22fe28b823
MT-Safe: lock display.
2010-03-26 11:54:43 +00:00
gb
d84d6b0f80
Make sure window resize completed prior to resizing the GL viewport.
2010-03-26 11:50:31 +00:00
gb
b50e7f1050
gstvaapicompat.h is a private header, don't install it.
2010-03-26 11:39:20 +00:00
gb
9f369020b5
Add gst_vaapi_display_{sync,flush}() helpers.
2010-03-26 11:35:20 +00:00
gb
8ea56134da
Add "synchronous" mode.
2010-03-26 11:30:54 +00:00
gb
15b2a9beec
Only add _display suffix to open & close members because they could be #define to some arbitrary value. lock/unlock are safe names.
2010-03-26 11:02:12 +00:00
gb
72fb4f6def
Restore GLX context only if there is one.
2010-03-26 10:09:23 +00:00
gb
c9f62b7405
Add gst_vaapi_window_glx_make_current(). Handle X11 window size changes and reset the GL viewport.
2010-03-26 09:41:12 +00:00
gb
c3dcabd90c
Check GstVaapiWindow::render() is available prior to calling it.
2010-03-26 08:35:24 +00:00
gb
ec3a04d74d
Fix compile flags.
2010-03-26 08:00:32 +00:00
gb
89a99d828c
Add initial VA/GLX support.
2010-03-25 17:28:49 +00:00
gb
511463c699
Add missing includes (for vaapi_check_status()).
2010-03-25 17:21:56 +00:00
gb
d56fcd0c2b
Only enable GST_DEBUG() if DEBUG is defined. Drop old D(bug()) stuff.
2010-03-25 17:21:13 +00:00
gb
fddeb54248
Add gst_vaapi_window_x11_is_foreign_xid() helper.
2010-03-25 17:18:36 +00:00
gb
b36a2142e4
Allow derived classes to specify custom Visual and Colormap.
2010-03-25 17:18:06 +00:00
gb
86954a32c5
Allow window creation with a specific visual (e.g. for GLX support).
2010-03-25 13:54:06 +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
67de515e63
Simplify initialization of VADisplay.
2010-03-25 12:39:54 +00:00
gb
1703ef2aca
Restore the gst_vaapi_{surface,image,subpicture}_get_id() interfaces.
2010-03-25 09:49:17 +00:00
gb
e4775c4e16
Use the parent display object, no need to maintain another one.
...
In the end, libgstvaapi-x11 reduced by 1 KB in .text vs. 0.1.1.
2010-03-25 09:39:17 +00:00
gb
56658c7aac
Add more internal helpers.
2010-03-25 09:37:40 +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
0881507989
Make GstVaapiWindow* derive from GstVaapiObject.
2010-03-24 17:22:18 +00:00
gb
3fe6ca16e2
gstvaapicompat.h is now a private header (not installed).
2010-03-24 16:27:36 +00:00
gb
520f7ac5b6
Include gstvaapicompat.h in source files only, not headers.
2010-03-24 16:25:56 +00:00
gb
1727295d2c
Drop tedious LIBVA_EXTRA_{CFLAGS,LIBS} definitions in Makefile.am. Override CFLAGS & LIBS instead.
2010-03-24 16:21:20 +00:00
gb
725bc7a607
Add compatibility with the original VA-API 0.29.
2010-03-24 16:17:49 +00:00
gb
afa9b9be06
Add missing file (gstvaapivalue.h).
2010-03-24 15:18:33 +00:00
gb
4f7af960cb
Fix g_warning() invocation.
2010-03-24 15:12:56 +00:00
gb
ae6c1637f3
Deassociate subpictures while destroying the surface.
2010-03-24 15:11:26 +00:00
gb
c8ec504343
Fix destruction order of subpictures. They should be destroyed first.
2010-03-24 14:57:33 +00:00
gb
9713d1a950
Add support for AYUV format.
2010-03-24 14:46:33 +00:00
gb
e4d9e06945
Fix documentation.
2010-03-24 13:44:01 +00:00
gb
b182366483
Move GValue specific stuff to a dedicated file.
2010-03-24 13:37:38 +00:00
gb
1959fa5b20
Cosmetics (vertical alignment).
2010-03-24 13:21:54 +00:00
gb
358be3dda9
Fix return value on error.
2010-03-24 13:20:34 +00:00
gb
a91206bbc1
Move "id" down to the GstVaapiObject base.
2010-03-24 13:19:58 +00:00
gb
1a90e11ae5
Cosmetics (drop extraneous empty line).
2010-03-24 12:59:22 +00:00
gb
2cbcd31488
Add GParamSpecs for GstVaapiID.
2010-03-24 12:57:54 +00:00
gb
a09c84b04d
Add GST_VAAPI_ID_FORMAT() and GST_VAAPI_ID_ARGS() helpers.
2010-03-24 12:38:40 +00:00
gb
647621cf3c
Add GstVaapiID abstraction.
2010-03-24 09:52:43 +00:00
gb
63add8fd63
Drop useless include (<va/va_backend.h>).
2010-03-24 08:35:27 +00:00
gb
9233fcf676
Optimize GST_VAAPI_OBJECT_GET_DISPLAY to avoid a run-time check.
2010-03-24 08:34:11 +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
9df9f60d62
Use a black background for new windows.
2010-03-23 17:29:47 +00:00
gb
e403f26bc5
Add "destroy" signal.
2010-03-23 17:12:40 +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
b4aaa2e8c1
Add note about the fact that the surface holds an extra reference to the subpicture.
2010-03-23 10:51:35 +00:00
gb
95edba8907
Improve debugging messages.
2010-03-23 10:49:33 +00:00
gb
6a8c6ad04c
Add gst_vaapi_surface_{,de}associate_subpicture() API.
2010-03-23 10:36:20 +00:00
gb
55c5b220cd
Wait for MapNotify or UnmapNotify events on foreign windows too.
2010-03-23 08:13:37 +00:00
gb
0bf40c2d44
Check whether the foreign XID is mapped at binding time.
2010-03-23 07:42:05 +00:00
gb
e4a4fd9742
Fix warnings (drop extraneous var).
2010-03-23 06:41:29 +00:00
gb
a1b25e8807
Add GST_VAAPI_WINDOW_XWINDOW() helper macro.
2010-03-23 06:40:27 +00:00
gb
df9e25d473
Shorten condition.
2010-03-22 16:59:29 +00:00
gb
3136cdc991
Try to improve switch to fullscreen mode.
2010-03-22 16:57:20 +00:00
gb
1c647d1f69
Improve display locking and rework X event wait functions.
2010-03-22 16:01:34 +00:00
gb
729f4fc9c6
Move _GstVaapiWindowPrivate declaration to gstvaapiwindow_priv.h.
2010-03-22 13:06:41 +00:00
gb
6407e5339a
Add private API to set window size & fullscreen modes
...
without triggering any notification or virtual functions.
This is useful for derived class to fix up sizes whenever appropriate.
2010-03-22 13:05:05 +00:00
gb
8e773e6d10
Add gst_vaapi_window_get_fullscreen() helper and "fullscreen" property.
2010-03-22 12:47:13 +00:00
gb
cc10345448
Add gst_vaapi_window_get_display() to base.
2010-03-22 12:39:02 +00:00
gb
873d5b7a04
Add GstVaapiPoint & GstVaapiRectangle data structures.
2010-03-22 12:16:47 +00:00
gb
b8daf624c5
Add gst_vaapi_window_set_fullscreen() API.
2010-03-22 10:51:49 +00:00
gb
c13c3c3620
Add gst_vaapi_display_get_pixel_aspect_ratio().
2010-03-22 09:32:01 +00:00
gb
01cc10fe51
Add display size accessors.
2010-03-22 08:44:38 +00:00