Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build failing with ffmpeg on latest Bullseye #14

Closed
nmaas87 opened this issue Sep 9, 2021 · 1 comment
Closed

Build failing with ffmpeg on latest Bullseye #14

nmaas87 opened this issue Sep 9, 2021 · 1 comment

Comments

@nmaas87
Copy link

nmaas87 commented Sep 9, 2021

Dear xbelanch,

sadly one cannot compile OBS on the latest Bullseye release, it fails at building ffmpeg:

CC      libavcodec/lcldec.o
CC      libavcodec/lclenc.o
CC      libavcodec/libaomdec.o
CC      libavcodec/libaomenc.o
CC      libavcodec/libdav1d.o
libavcodec/libdav1d.c: In function ‘libdav1d_init’:
libavcodec/libdav1d.c:143:7: error: ‘Dav1dSettings’ has no member named ‘n_tile_threads’; did you mean ‘n_threads’?
  143 |     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:145:52: error: ‘DAV1D_MAX_TILE_THREADS’ undeclared (first use in this function); did you mean ‘DAV1D_MAX_TILE_ROWS’?
  145 |                      : FFMIN(floor(sqrt(threads)), DAV1D_MAX_TILE_THREADS);
      |                                                    ^~~~~~~~~~~~~~~~~~~~~~
./libavutil/common.h:96:28: note: in definition of macro ‘FFMIN’
   96 | #define FFMIN(a,b) ((a) > (b) ? (b) : (a))
      |                            ^
libavcodec/libdav1d.c:145:52: note: each undeclared identifier is reported only once for each function it appears in
  145 |                      : FFMIN(floor(sqrt(threads)), DAV1D_MAX_TILE_THREADS);
      |                                                    ^~~~~~~~~~~~~~~~~~~~~~
./libavutil/common.h:96:28: note: in definition of macro ‘FFMIN’
   96 | #define FFMIN(a,b) ((a) > (b) ? (b) : (a))
      |                            ^
libavcodec/libdav1d.c:146:6: error: ‘Dav1dSettings’ has no member named ‘n_frame_threads’
  146 |     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:148:48: error: ‘Dav1dSettings’ has no member named ‘n_tile_threads’; did you mean ‘n_threads’?
  148 |                       : FFMIN(ceil(threads / s.n_tile_threads), DAV1D_MAX_FRAME_THREADS);
      |                                                ^~~~~~~~~~~~~~
./libavutil/common.h:96:22: note: in definition of macro ‘FFMIN’
   96 | #define FFMIN(a,b) ((a) > (b) ? (b) : (a))
      |                      ^
libavcodec/libdav1d.c:148:65: error: ‘DAV1D_MAX_FRAME_THREADS’ undeclared (first use in this function); did you mean ‘DAV1D_MAX_THREADS’?
  148 |                       : FFMIN(ceil(threads / s.n_tile_threads), DAV1D_MAX_FRAME_THREADS);
      |                                                                 ^~~~~~~~~~~~~~~~~~~~~~~
./libavutil/common.h:96:28: note: in definition of macro ‘FFMIN’
   96 | #define FFMIN(a,b) ((a) > (b) ? (b) : (a))
      |                            ^
libavcodec/libdav1d.c:148:48: error: ‘Dav1dSettings’ has no member named ‘n_tile_threads’; did you mean ‘n_threads’?
  148 |                       : FFMIN(ceil(threads / s.n_tile_threads), DAV1D_MAX_FRAME_THREADS);
      |                                                ^~~~~~~~~~~~~~
./libavutil/common.h:96:40: note: in definition of macro ‘FFMIN’
   96 | #define FFMIN(a,b) ((a) > (b) ? (b) : (a))
      |                                        ^
libavcodec/libdav1d.c:150:13: error: ‘Dav1dSettings’ has no member named ‘n_frame_threads’
  150 |            s.n_frame_threads, s.n_tile_threads);
      |             ^
libavcodec/libdav1d.c:150:33: error: ‘Dav1dSettings’ has no member named ‘n_tile_threads’; did you mean ‘n_threads’?
  150 |            s.n_frame_threads, s.n_tile_threads);
      |                                 ^~~~~~~~~~~~~~
      |                                 n_threads
libavcodec/libdav1d.c: At top level:
libavcodec/libdav1d.c:390:94: error: ‘DAV1D_MAX_TILE_THREADS’ undeclared here (not in a function); did you mean ‘DAV1D_MAX_TILE_ROWS’?
  390 |     { "tilethreads", "Tile threads", OFFSET(tile_threads), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, DAV1D_MAX_TILE_THREADS, VD },
      |                                                                                              ^~~~~~~~~~~~~~~~~~~~~~
      |                                                                                              DAV1D_MAX_TILE_ROWS
CC      libavcodec/libfdk-aacdec.o
CC      libavcodec/libfdk-aacenc.o
libavcodec/libdav1d.c:391:97: error: ‘DAV1D_MAX_FRAME_THREADS’ undeclared here (not in a function); did you mean ‘DAV1D_MAX_THREADS’?
  391 |     { "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:59: libavcodec/libdav1d.o] Error 1
make: *** Waiting for unfinished jobs....

real    64m26.345s
user    129m6.881s
sys     15m17.536s
pi@raspberrypi:~/OBS4Pi $

I add the log here: build_failure.txt - everything before worked perfectly. Maybe you got an idea how to fix it?

Thanks a lot!

Nico

@nmaas87
Copy link
Author

nmaas87 commented Sep 9, 2021

Removing the libdav1d option from building ffmpeg solved the problem and it compiles now succesfully.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant