[FFmpeg-user] error: ‘Dav1dSettings’

Matt C asperi at hotmail.com
Fri Jan 14 10:37:28 EET 2022


New to compiling, also getting this error:




libavcodec/libdav1d.c:148:7: error: ‘Dav1dSettings’ {aka ‘struct Dav1dSettings’} has no member named ‘n_tile_threads’; did you mean ‘n_threads’?
  148 |     s.n_tile_threads = dav1d->tile_threads
      |       ^~~~~~~~~~~~~~
      |       n_threads
In file included from ./libavutil/avutil.h:296,
                 from ./libavutil/avassert.h:31,
                 from libavcodec/libdav1d.c:24:
libavcodec/libdav1d.c:150:52: error: ‘DAV1D_MAX_TILE_THREADS’ undeclared (first use in this function); did you mean ‘DAV1D_MAX_TILE_ROWS’?
  150 |                      : FFMIN(floor(sqrt(threads)), DAV1D_MAX_TILE_THREADS);
      |                                                    ^~~~~~~~~~~~~~~~~~~~~~
./libavutil/common.h:105:28: note: in definition of macro ‘FFMIN’
  105 | #define FFMIN(a,b) ((a) > (b) ? (b) : (a))
      |                            ^
libavcodec/libdav1d.c:150:52: note: each undeclared identifier is reported only once for each function it appears in
  150 |                      : FFMIN(floor(sqrt(threads)), DAV1D_MAX_TILE_THREADS);
      |                                                    ^~~~~~~~~~~~~~~~~~~~~~
./libavutil/common.h:105:28: note: in definition of macro ‘FFMIN’
  105 | #define FFMIN(a,b) ((a) > (b) ? (b) : (a))
      |                            ^
libavcodec/libdav1d.c:151:6: error: ‘Dav1dSettings’ {aka ‘struct Dav1dSettings’} has no member named ‘n_frame_threads’
  151 |     s.n_frame_threads = dav1d->frame_threads
      |      ^
In file included from ./libavutil/avutil.h:296,
                 from ./libavutil/avassert.h:31,
                 from libavcodec/libdav1d.c:24:
libavcodec/libdav1d.c:153:48: error: ‘Dav1dSettings’ {aka ‘struct Dav1dSettings’} has no member named ‘n_tile_threads’; did you mean ‘n_threads’?
  153 |                       : FFMIN(ceil(threads / s.n_tile_threads), DAV1D_MAX_FRAME_THREADS);
      |                                                ^~~~~~~~~~~~~~
./libavutil/common.h:105:22: note: in definition of macro ‘FFMIN’
  105 | #define FFMIN(a,b) ((a) > (b) ? (b) : (a))
      |                      ^
libavcodec/libdav1d.c:153:65: error: ‘DAV1D_MAX_FRAME_THREADS’ undeclared (first use in this function); did you mean ‘DAV1D_MAX_THREADS’?
  153 |                       : FFMIN(ceil(threads / s.n_tile_threads), DAV1D_MAX_FRAME_THREADS);
      |                                                                 ^~~~~~~~~~~~~~~~~~~~~~~
./libavutil/common.h:105:28: note: in definition of macro ‘FFMIN’
  105 | #define FFMIN(a,b) ((a) > (b) ? (b) : (a))
      |                            ^
libavcodec/libdav1d.c:153:48: error: ‘Dav1dSettings’ {aka ‘struct Dav1dSettings’} has no member named ‘n_tile_threads’; did you mean ‘n_threads’?
  153 |                       : FFMIN(ceil(threads / s.n_tile_threads), DAV1D_MAX_FRAME_THREADS);
      |                                                ^~~~~~~~~~~~~~
./libavutil/common.h:105:40: note: in definition of macro ‘FFMIN’
  105 | #define FFMIN(a,b) ((a) > (b) ? (b) : (a))
      |                                        ^
libavcodec/libdav1d.c:155:13: error: ‘Dav1dSettings’ {aka ‘struct Dav1dSettings’} has no member named ‘n_frame_threads’
  155 |            s.n_frame_threads, s.n_tile_threads);
      |             ^
libavcodec/libdav1d.c:155:33: error: ‘Dav1dSettings’ {aka ‘struct Dav1dSettings’} has no member named ‘n_tile_threads’; did you mean ‘n_threads’?
  155 |            s.n_frame_threads, s.n_tile_threads);
      |                                 ^~~~~~~~~~~~~~
      |                                 n_threads
libavcodec/libdav1d.c: At top level:
libavcodec/libdav1d.c:462:94: error: ‘DAV1D_MAX_TILE_THREADS’ undeclared here (not in a function); did you mean ‘DAV1D_MAX_TILE_ROWS’?
  462 |     { "tilethreads", "Tile threads", OFFSET(tile_threads), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, DAV1D_MAX_TILE_THREADS, VD },
      |                                                                                              ^~~~~~~~~~~~~~~~~~~~~~
      |                                                                                              DAV1D_MAX_TILE_ROWS
libavcodec/libdav1d.c:463:97: error: ‘DAV1D_MAX_FRAME_THREADS’ undeclared here (not in a function); did you mean ‘DAV1D_MAX_THREADS’?
  463 |     { "framethreads", "Frame threads", OFFSET(frame_threads), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, DAV1D_MAX_FRAME_THREADS, VD },
      |                                                                                                 ^~~~~~~~~~~~~~~~~~~~~~~
      |                                                                                                 DAV1D_MAX_THREADS
make: *** [ffbuild/common.mak:67: libavcodec/libdav1d.o] Error 1
make: *** Waiting for unfinished jobs....



Used this to make lib:


cd ~/ffmpeg_sources && \
git -C dav1d pull 2> /dev/null || git clone --depth 1 https://code.videolan.org/videolan/dav1d.git && \
mkdir -p dav1d/build && \
cd dav1d/build && \
meson setup -Denable_tools=false -Denable_tests=false --default-library=static .. --prefix "$HOME/ffmpeg_build" --libdir="$HOME/ffmpeg_build/lib" && \
ninja && \
ninja install






More information about the ffmpeg-user mailing list