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