Commit graph

29 commits

Author SHA1 Message Date
Gwenole Beauchesne
7b19745141 decoder: simplify output of decoded frames.
Drop obsolete gst_vaapi_decoder_push_surface() that was no longer used.
Change gst_vaapi_decoder_push_surface_proxy() semantics to assume PTS
is already set correctly and reference count increased, if necessary.
2012-01-27 13:28:12 +01:00
Gwenole Beauchesne
e5d12e8853 decoder: rework the internal VA objects API.
The new API simplifies a lot reference counting and makes it more
flexible for future additions/changes. The GstVaapiCodecInfo is
also gone. Rather, new helper macros are provided to allocate
picture, slice and quantization matrix parameter buffers.
2012-01-27 13:28:11 +01:00
Gwenole Beauchesne
dbba1f6107 decoder: allow slices to be attached to pictures later. 2012-01-24 10:21:45 +01:00
Gwenole Beauchesne
74d3680381 decoder: add ref_count to GstVaapiPicture. 2012-01-24 10:15:52 +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
5aea02a66f vc1: fix bitplanes decoding. 2012-01-16 11:40:51 +01:00
Gwenole Beauchesne
3360f7f3e3 Add VA decoder helpers. 2012-01-16 11:40:50 +01:00
Gwenole Beauchesne
3e1d235c1a decoder: fix possible leak of VA surfaces.
Under some circumstances, we could have leaked a surface, thus not
releasing it to the pool of available surfaces in the VA context.
The strategy is now to use a proxy earlier and automatically ref/unref
whenever necessary. In particular, during the lifetime needed for FFmpeg.
2012-01-05 17:35:43 +01:00
Gwenole Beauchesne
e3c6a78da6 decoder: drop unused headers. 2011-12-08 15:16:14 +01:00
Gwenole Beauchesne
1701ce3107 Update copyright notice. 2011-06-14 13:54:07 +02:00
gb
86d0b2ade9 Regularly update and expose decoder caps. 2010-09-20 12:55:46 +02:00
gb
a777a98f2f Add mechanism to reinsert buffer leftovers into the queue. 2010-09-20 12:55:46 +02:00
gb
edae9f068c Extract framerate information from caps. 2010-09-20 12:55:44 +02:00
gb
2d5434cb0b Move caps initialization to parent class. 2010-09-20 12:55:43 +02:00
gb
4285c2cc02 Use size information from the demuxer, whenever available. i.e. fix WMV3 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
021d2ab947 Drop obsolete (and wrong) code. 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
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
2356ceb0d9 Use a GstTask with start/stop semantics for the decoder thread. 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
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
cc28cdbd60 - Add PTS and framerate information.
- Simplify parsing with an AVCodeParserContext.
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
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