[FFmpeg-devel] [PATCH 2/3] lavfi: Add filters to run arbitrary OpenCL programs

Michael Niedermayer michael at niedermayer.cc
Thu Jan 4 20:16:13 EET 2018


On Thu, Jan 04, 2018 at 12:07:12AM +0000, Mark Thompson wrote:
> ---
> On 03/01/18 23:41, Michael Niedermayer wrote:
> > On Wed, Jan 03, 2018 at 10:47:21PM +0000, Mark Thompson wrote:
> >> ---
> >>  configure                       |   1 +
> >>  libavfilter/Makefile            |   2 +
> >>  libavfilter/allfilters.c        |   2 +
> >>  libavfilter/vf_program_opencl.c | 441 ++++++++++++++++++++++++++++++++++++++++
> >>  4 files changed, 446 insertions(+)
> >>  create mode 100644 libavfilter/vf_program_opencl.c
> > 
> > This appears to break build here:
> > make distclean ; ./configure && make -j12
> > ...
> > LD	ffmpeg_g
> > libavfilter/libavfilter.a(vf_program_opencl.o): In function `program_opencl_load':
> > ffmpeg/libavfilter/vf_program_opencl.c:64: undefined reference to `clCreateCommandQueue'
> > ffmpeg/libavfilter/vf_program_opencl.c:73: undefined reference to `clCreateKernel'
> > libavfilter/libavfilter.a(vf_program_opencl.o): In function `program_opencl_run':
> > ffmpeg/libavfilter/vf_program_opencl.c:115: undefined reference to `clSetKernelArg'
> > ffmpeg/libavfilter/vf_program_opencl.c:121: undefined reference to `clSetKernelArg'
> > ffmpeg/libavfilter/vf_program_opencl.c:134: undefined reference to `clSetKernelArg'
> > ffmpeg/libavfilter/vf_program_opencl.c:184: undefined reference to `clFinish'
> > ffmpeg/libavfilter/vf_program_opencl.c:142: undefined reference to `clGetImageInfo'
> > ffmpeg/libavfilter/vf_program_opencl.c:144: undefined reference to `clGetImageInfo'
> > ffmpeg/libavfilter/vf_program_opencl.c:150: undefined reference to `clEnqueueNDRangeKernel'
> > ffmpeg/libavfilter/vf_program_opencl.c:160: undefined reference to `clFinish'
> > libavfilter/libavfilter.a(vf_program_opencl.o): In function `program_opencl_uninit':
> > ffmpeg/libavfilter/vf_program_opencl.c:326: undefined reference to `clReleaseKernel'
> > ffmpeg/libavfilter/vf_program_opencl.c:333: undefined reference to `clReleaseCommandQueue'
> > libavfilter/libavfilter.a(opencl.o): In function `ff_opencl_filter_uninit':
> > ffmpeg/libavfilter/opencl.c:164: undefined reference to `clReleaseProgram'
> > libavfilter/libavfilter.a(opencl.o): In function `ff_opencl_filter_load_program':
> > ffmpeg/libavfilter/opencl.c:180: undefined reference to `clCreateProgramWithSource'
> > ffmpeg/libavfilter/opencl.c:188: undefined reference to `clBuildProgram'
> > ffmpeg/libavfilter/opencl.c:213: undefined reference to `clReleaseProgram'
> > ffmpeg/libavfilter/opencl.c:197: undefined reference to `clGetProgramBuildInfo'
> > ffmpeg/libavfilter/opencl.c:202: undefined reference to `clGetProgramBuildInfo'
> > collect2: error: ld returned 1 exit status
> > make: *** [ffmpeg_g] Error 1
> > [...]
> 
> Right, the dependency on opencl from openclsrc was missing, so it would still be included without --enable-opencl.
> 
> Fixed below.

confirmed

thanks, also thanks for the great documentation

no more comments from me

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

What does censorship reveal? It reveals fear. -- Julian Assange
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: not available
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20180104/f0ace68a/attachment.sig>


More information about the ffmpeg-devel mailing list