[FFmpeg-devel] Added HW H.264 and HEVC encoding for AMD GPUs based on AMF SDK

Mironov, Mikhail Mikhail.Mironov at amd.com
Tue Nov 7 16:50:21 EET 2017


> -----Original Message-----
> From: ffmpeg-devel [mailto:ffmpeg-devel-bounces at ffmpeg.org] On Behalf
> Of Hendrik Leppkes
> Sent: November 7, 2017 3:25 AM
> To: FFmpeg development discussions and patches <ffmpeg-
> devel at ffmpeg.org>
> Subject: Re: [FFmpeg-devel] Added HW H.264 and HEVC encoding for AMD
> GPUs based on AMF SDK
> 
> On Tue, Nov 7, 2017 at 12:28 AM, Mironov, Mikhail
> <Mikhail.Mironov at amd.com> wrote:
> >> -----Original Message-----
> >> From: ffmpeg-devel [mailto:ffmpeg-devel-bounces at ffmpeg.org] On
> Behalf
> >> Of Michael Niedermayer
> >> Sent: November 6, 2017 5:47 PM
> >> To: FFmpeg development discussions and patches <ffmpeg-
> >> devel at ffmpeg.org>
> >> Subject: Re: [FFmpeg-devel] Added HW H.264 and HEVC encoding for
> AMD
> >> GPUs based on AMF SDK
> >>
> >> On Sat, Nov 04, 2017 at 10:49:44PM -0500, Mikhail Mironov wrote:
> >> > From fc6a3f63eb9c3734f4101cee2a2f5707e063ab62 Mon Sep 17
> 00:00:00
> >> 2001
> >> > From: mmironov <mikhail.mironov at amd.com>
> >> > Date: Fri, 27 Oct 2017 13:03:15 -0400
> >> > Subject: [PATCH] Added: HW accelerated H.264 and HEVC encoding for
> >> AMD
> >> > GPUs  based on AMF SDK
> >> >
> >> > Signed-off-by: mmironov <mikhail.mironov at amd.com>
> >> > ---
> >> >  Changelog                |    3 +-
> >> >  compat/amd/amfsdkenc.h   | 1753
> >> ++++++++++++++++++++++++++++++++++++++++++++++
> >> >  configure                |   25 +
> >> >  libavcodec/Makefile      |    4 +
> >> >  libavcodec/allcodecs.c   |    2 +
> >> >  libavcodec/amfenc.c      |  515 ++++++++++++++
> >> >  libavcodec/amfenc.h      |  137 ++++
> >> >  libavcodec/amfenc_h264.c |  366 ++++++++++
> >> > libavcodec/amfenc_hevc.c
> >> > |  294 ++++++++
> >> >  libavcodec/version.h     |    4 +-
> >> >  10 files changed, 3100 insertions(+), 3 deletions(-)  create mode
> >> > 100644 compat/amd/amfsdkenc.h  create mode 100644
> >> libavcodec/amfenc.c
> >> > create mode 100644 libavcodec/amfenc.h  create mode 100644
> >> > libavcodec/amfenc_h264.c  create mode 100644
> >> > libavcodec/amfenc_hevc.c
> >>
> >> This seems to fail building in mingw64
> >
> > This is strange. Just in case: my build setup is described here:
> > https://github.com/Xaymar/ffmpeg-amf/blob/master/Build.txt
> >
> > I also attached full amfsdkenc.h header file in case I made a mistake with
> git integration.
> >
> >
> >>
> >> make
> >> CC      libavcodec/amfenc.o
> >> In file included from src/libavcodec/amfenc.c:22:0:
> >> src/libavutil/hwcontext_d3d11va.h:71:5: error: unknown type name
> >> ‘ID3D11VideoDevice’
> >>      ID3D11VideoDevice   *video_device;
> >>      ^
> >> src/libavutil/hwcontext_d3d11va.h:79:5: error: unknown type name
> >> ‘ID3D11VideoContext’
> >>      ID3D11VideoContext  *video_context;
> >>      ^
> >
> > This is declared in d3d11.h and came with mingw64. Mine version has it:
> > msys64new\mingw64\x86_64-w64-mingw32\include\d3d11.h  - attached.
> > Is it possible that we use different versions of mingw? Do you have it
> declared?
> >
> 
> If you use/rely on hwcontext_d3d11va, you should probably have a
> configure dependency on that part being available.

OK, use of hwcontext_d3d11va  is optional, I will put the dependent parts of the code under #ifdef

> 
> - Hendrik
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

Thanks,
Mikhail


More information about the ffmpeg-devel mailing list