[FFmpeg-devel] DXVA Question.
h.leppkes at gmail.com
Mon Apr 27 09:28:25 CEST 2015
On Mon, Apr 27, 2015 at 8:44 AM, Anton Fedchin <anightik at gmail.com> wrote:
> Hendrik Leppkes <h.leppkes <at> gmail.com> writes:
>> On Sun, Apr 26, 2015 at 8:45 AM, Anton Fedchin <anightik <at> gmail.com>
>> > Hi,
>> > I'm working on porting our project Kodi to DirectX11. We also use ffmpeg
>> > and I've implemented patch to ffmpeg dxva related code to work with
>> > video API. It works good. Before we send the patch we have a question.
>> > Question is what you prefer a configure switch or something else?
>> Part of the dxva support in ffmpeg is public API (ie. dxva_context).
>> Unfortunately, you cannot touch this struct without a major version
>> bump of ffmpeg.
>> This being public API also means that you cannot modify it based on
>> configure switches, since the API must remain the same.
>> So keeping in mind that you cannot touch the public API, personally, I
>> think the cleanest way to do this would be to just leave ffmpeg alone,
>> and a user-app that needs D3D11 could just write a simple wrapper
>> IDirectXVideoDecoder that internally calls ID3D11VideoContext instead.
>> This would not need any changes to the public API, or ffmpeg at all,
>> at only a small level of effort to write this wrapper (which is
>> probably half an hour).
>> - Hendrik
> Hi Hendrik,
> Your solution is better than my. Why didn't I think of that? :) Thanks.
> But I think in future MS will drop the old D3D API and I hope what ffmepg
> will be ready to that and will support both APIs.
MS doesn't really drop API support very easily. Even the DX7 APIs are
still available today.
But in any case, I think supporting D3D11 HWAccel is something we
should consider, so I guess I'll simply send a patch to introduce an
allocation function for dxva_context, so that we can extend it after
the next bump at least.
More information about the ffmpeg-devel