gb
021d2ab947
Drop obsolete (and wrong) code.
2010-09-20 12:55:42 +02:00
gb
26790878a1
Cosmetics (spelling).
2010-09-20 12:55:42 +02:00
gb
ecff33db03
Try to fix timestamps (step 1). Looks OK on H55.
2010-09-20 12:55:42 +02:00
gb
4754317e70
Relicense gst-libs/ code to LGPL v2.1+.
2010-09-20 12:55:42 +02:00
gb
8d9b365a5b
Drop extraneous comma.
2010-09-20 12:55:42 +02:00
gb
e6b3cfeacd
Drop variant=itu field to help codec detection.
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
49f8bad478
Move VA context reset to AVCodecContext.get_context() as the
...
surface sizes can change.
2010-09-20 12:55:41 +02:00
gb
ee000a357b
Fix gst_vaapi_display_has_{decoder,encoder}() to check for the entrypoint too.
2010-09-20 12:55:41 +02:00
gb
1b76d72b98
Add GST_VAAPI_ENTRYPOINT_SLICE_ENCODE.
2010-09-20 12:55:41 +02:00
gb
800faf9ea7
Document H.264 / AVC1 format case better.
2010-09-20 12:55:41 +02:00
gb
fcede672df
Fix H.264 decoding with AVC1 format bitstreams.
2010-09-20 12:55:41 +02:00
gb
f1fc4b52c5
Export gst_vaapi_video_buffer_new().
2010-09-20 12:55:41 +02:00
gb
8c17e2f99d
Fix gst_vaapi_profile_get_caps() to include the "profile" field.
2010-09-20 12:55:41 +02:00
gb
5d1eb8ce89
Add gst_vaapi_decoder_pause().
2010-09-20 12:55:41 +02:00
gb
2356ceb0d9
Use a GstTask with start/stop semantics for the decoder thread.
2010-09-20 12:55:41 +02:00
gb
5f5ed724dd
Drop extraneous var.
2010-09-20 12:55:41 +02:00
gb
a1fddf8bcc
Add support for GstVaapiSurfaceProxy to GstVaapiVideoBuffer.
2010-09-20 12:55:41 +02:00
gb
0596777703
Fix gst_vaapi_decoder_get_surface() status.
2010-09-20 12:55:41 +02:00
gb
bda32435c2
Try to set correct timestamps to the decoded surface proxy.
2010-09-20 12:55:41 +02:00
gb
a14711b935
Add timestamps to GstVaapiSurfaceProxy.
2010-09-20 12:55:41 +02:00
gb
7a3934d01d
Fix GstVaapiDecoder::destroy(): GASyncQueue is not a GObject, likewise for GstBuffer.
2010-09-20 12:55:41 +02:00
gb
6a3b05dbca
Fix destructor, av_parser_close() does destroy the struct already, unliker avcodec_close()...
2010-09-20 12:55:41 +02:00
gb
4350de601b
Prefer profile from codec-data if any was found there.
2010-09-20 12:55:40 +02:00
gb
1f4e67503c
Improve heuristics to find the best profile. Use the highest one if no
...
explicit match on "profile" field.
2010-09-20 12:55:40 +02:00
gb
1c48fa3a23
Make sure gst_vaapi_decoder_get_surface() gets unblocked on error.
2010-09-20 12:55:40 +02:00
gb
1def875b95
Fix VC-1 codec initialization, it really needs an extradata buffer.
2010-09-20 12:55:40 +02:00
gb
61ae27d84c
Split decoder creation with actual resources allocation
...
and codec setup (probe). This fixes a memory leak (avctx, pctx)
on destroy and most interestingly makes it possible to
detect unsupported codecs.
2010-09-20 12:55:40 +02:00
gb
ff193a22b9
Move gst_vaapi_decoder_ffmpeg_create() call to object constructor.
2010-09-20 12:55:37 +02:00
gb
89c094d659
Add "codec-data" property for additional codec data.
...
e.g. VC-1 sequence headers for elementary streams.
2010-09-20 12:55:32 +02:00
gb
664542fe2e
Cosmetics (weird indentation).
2010-09-20 12:55:32 +02:00
gb
42248445f2
Cosmetics (extraneous variable, debug message).
2010-09-20 12:55:32 +02:00
gb
cc28cdbd60
- Add PTS and framerate information.
...
- Simplify parsing with an AVCodeParserContext.
2010-09-20 12:55:32 +02:00
gb
29f1784dd7
Add more error codes. Fix documentation.
2010-09-20 12:55:32 +02:00
gb
eddf6b0d6c
Fix gst_vaapi_profile_get_codec().
...
Improve gst_vaapi_profile_from_caps() for H.264 & caps with "codec-data".
2010-09-20 12:55:32 +02:00
gb
d7e4bca05b
Handle user end-of-streams. Add gst_vaapi_decoder_{start,stop}() helpers.
2010-09-20 12:55:32 +02:00
gb
0d7164c96c
Flush stream only if avcodec_decode_video() read something.
...
Otherwise, we might still have to seek into the stream.
i.e. keep the data longer.
2010-09-20 12:55:32 +02:00
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
gb
4f00d5657b
Fix documentation of *Class'es.
2010-03-21 08:45:09 +00:00
gb
edea5998f5
Move GstVaapiSurfaceRenderFlags conversion to get_PutSurface_flags_from_GstVaapiSurfaceRenderFlags().
2010-03-21 08:38:17 +00:00
gb
6179b6495e
Move GstVaapiSurfaceRenderFlags to gstvaapisurface.h since this will
...
also be useful for e.g. a gstvaapitexture.h.
2010-03-21 08:22:46 +00:00
gb
27307a6c1b
Rename gst_vaapi_window_put_surface_full() to plain gst_vaapi_window_put_surface().
2010-03-21 08:12:52 +00:00
gb
e24ba07b41
Document GstVaapiVideoBuffer.
2010-03-19 16:41:52 +00:00
gb
dabb757458
Document surface & image pools. Drop obsolete gst_vaapi_video_pool_new() function.
2010-03-19 16:08:48 +00:00
gb
d63f196c73
Add tedious documentation.
2010-03-19 15:45:21 +00:00
gb
9a1741a193
Beautify append_formats().
2010-03-19 10:42:11 +00:00
gb
a318326f7f
Simplify GstVaapiDisplay (use GArray).
2010-03-19 10:38:45 +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
b9bf5678f9
Make it possible to bin an X11 window to GstVaapiWindowX11 with plain
...
g_object_new() and "xid" property. i.e. get foreign window size in
gst_vaapi_window_x11_create().
2010-03-18 13:49:50 +00:00
gb
087b1dabda
Split map/unmap functions into internal functions that don't check preconditions.
2010-03-18 12:59:55 +00:00