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
00bb1ca6b4
Add Intel copyright information.
2011-08-01 14:15:39 +02:00
Gwenole Beauchesne
a9a9d72e96
Fix build with newer FFmpeg versions.
2011-07-22 15:56:22 +02:00
Gwenole Beauchesne
1701ce3107
Update copyright notice.
2011-06-14 13:54:07 +02:00
gb
fcb65d60f5
Drop dependency on libavformat.
2010-09-20 12:55:47 +02:00
gb
6735dc6b68
Fix decoding of some H.264 streams. e.g. Ice Age 2 trailer.
2010-09-20 12:55:47 +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
0fb0c49dbb
Improve previous fix.
2010-09-20 12:55:46 +02:00
gb
d5df97625e
Fix a crash in the FFmpeg decoder on close.
2010-09-20 12:55:46 +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
2d5434cb0b
Move caps initialization to parent class.
2010-09-20 12:55:43 +02:00
gb
fe35801572
Fix doc.
2010-09-20 12:55:43 +02:00
gb
09552b1559
More simplifications.
2010-09-20 12:55:43 +02:00
gb
1a341a1c02
Use avctx->coded_{width,height} info to create the VA context.
2010-09-20 12:55:43 +02:00
gb
24d918b7a3
Try to improve heuristics to use an AVCodecContextParser.
2010-09-20 12:55:43 +02:00
gb
dbe1d622ef
Fix VC-1 decoding, it does not require any specific parser.
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
fa7505c0c5
Improve WMV3 detection yet further.
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
49f8bad478
Move VA context reset to AVCodecContext.get_context() as the
...
surface sizes can change.
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
6a3b05dbca
Fix destructor, av_parser_close() does destroy the struct already, unliker avcodec_close()...
2010-09-20 12:55:41 +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
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
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
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