[FFmpeg-devel] [PATCH 0/2] VDA decoder for ffmpeg
Reimar.Doeffinger at gmx.de
Tue Aug 21 20:05:44 CEST 2012
On 21 Aug 2012, at 10:02, Xidorn Quan <quanxunzhen at gmail.com> wrote:
> On Tue, Aug 21, 2012 at 3:00 PM, Reimar Döffinger
> <Reimar.Doeffinger at gmx.de>wrote:
>> Thanks, I really like the feature, but why can't you instantiate a full
>> H.264 decoder with VDA HWAccel like an external application would instead
>> of reimplementing lots of the header parsing?
> I have considered the solution you said, and obviously, life would
> be a lot more simple if the decoder be implemented that way. But for
> two reasons I decided not to use it:
> 1. Origin H.264 decoder never guarantees that HWAccel will be used.
> For some cases, the decoder doesn't call get_format, and we will
> have no chance to ask it to use HWAccel. If it happens,
> the h264_vda decoder will automatically fall back to software
> decoding without any warning or something like this.
> I don't think it is a proper behavior for this decoder. It should
> either succeed to initialize and then use VDA to decode, or fail
> if it can't and let caller to fall back itself.
> In fact, sometimes, VDA can decode a video but H.264 decoder
> refuses to use it and do decoding itself.
> 2. It's a trivial reason that, the VDA HWAccel will always copy
> frame data to its own buffer before decoding, it wastes CPU time.
> It can be more efficient in an independent decoder.
Both of those very much seem to be bugs to me though.
The second is more understandable considering othe HWAccel APIs that I think need it (still not good though), but the first one seems rather serious to me.
More information about the ffmpeg-devel