[FFmpeg-trac] #11144(avfilter:new): Quirc filter does not compile

FFmpeg trac at avcodec.org
Sun Aug 18 18:44:32 EEST 2024


#11144: Quirc filter does not compile
-------------------------------------+-------------------------------------
             Reporter:  Squaduck     |                     Type:  defect
               Status:  new          |                 Priority:  normal
            Component:  avfilter     |                  Version:  git-
             Keywords:  build        |  master
  compilation                        |               Blocked By:
             Blocking:               |  Reproduced by developer:  0
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------
 Summary of the bug:
 Quirc filter does not compile.

 How to reproduce:
 {{{
 % ./configure --enable-libquirc ; make
 libavfilter/vf_quirc.c: In function ‘filter_frame’:
 libavfilter/vf_quirc.c:92:5: error: unknown type name ‘FilterLink’; did
 you mean ‘AVFilterLink’?
    92 |     FilterLink *inl = ff_filter_link(inlink);
       |     ^~~~~~~~~~
       |     AVFilterLink
 libavfilter/vf_quirc.c:92:23: error: implicit declaration of function
 ‘ff_filter_link’; did you mean ‘avfilter_link’? [-Werror=implicit-
 function-declaration]
    92 |     FilterLink *inl = ff_filter_link(inlink);
       |                       ^~~~~~~~~~~~~~
       |                       avfilter_link
 libavfilter/vf_quirc.c:92:23: warning: initialization of ‘int *’ from
 ‘int’ makes pointer from integer without a cast [-Wint-conversion]
 libavfilter/vf_quirc.c:108:68: error: request for member ‘frame_count_out’
 in something not a structure or union
   108 |            "Found count %d codes in image #%ld\n", codes_count,
 inl->frame_count_out);
       |
 ^~
 cc1: some warnings being treated as errors
 }}}
 (actual command, irrelevant lines were omitted in the example above):
 {{{./configure --disable-everything --disable-avdevice --disable-avcodec
 --disable-avformat --disable-swresample --disable-swscale --disable-
 postproc --disable-autodetect --enable-filter=quirc --enable-libquirc ;
 make -j ${nproc} }}}

 Building on
 Linux 6.10.4-1-default # 1 SMP PREEMPT_DYNAMIC Mon Aug 12 05:49:20 UTC
 2024 (0363a35) x86_64
 with
 gcc (SUSE Linux) 13.3.1 20240807 [revision 9d368828bd4d04ce5
 07e02a581be850fca849fae]
 on ffmpeg commit 5c1c0325cd1bd3f826bbd73dffd0b07974a586bd
 and quirc commit fd13bfbf4f58b0a966 b2fdfd634b96faaf3f34d2

 Adding the line {{{#include "filters.h"}}} seems to fix it. Looking at git
 log, it seems like quirc never included "filters.h", so I have no clue why
 it was fine before. I don't know what the procedure to contribute code is,
 so I'm just going to let someone who knows what they're doing do what
 needs to be done. (I know that it'd be really simple, and perhaps even a
 good first commit, but I don't want to go down that rabbit hole right
 now.)
-- 
Ticket URL: <https://trac.ffmpeg.org/ticket/11144>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list