cth103 / dcpomatic

DCP-o-matic repository: main is the development branch (where v2.16.x versions are being made) and v2.17.x has the v2.17.x "unstable" versions (main is merged there every so often).
https://dcpomatic.com/
GNU General Public License v2.0
111 stars 23 forks source link

Undefined symbol in libdcpomatic2: av_get_default_channel_layout(int)? #13

Closed Warblefly closed 1 year ago

Warblefly commented 3 years ago

When cross-compiling v2.15.x for Win32 from GNU/Linux against latest FFmpeg since July 22nd, this symbol is undefined.

av_get_default_channel_layout(int)

It is probably not the fault of dcpomatic's code!

The error crept in at this FFmpeg commit: https://github.com/FFmpeg/FFmpeg/commit/1be3d8a0cb77f8d34c1f39b47bf5328fe10c82d7

1be3d8a0cb77f8d34c1f39b47bf5328fe10c82d7 on 22/07/2021:

"avcodec/avcodec: Stop including channel_layout.h in avcodec.h"

dcpomatic2 compiles without problem when libavcodec/avcodec.h in the the FFmpeg source is altered to return

#include <libavutil/channel_layout.h>

to around line 34 of the file.

I'm not sure what the etiquette is here — do I go to FFmpeg dev list with this first?

cth103 commented 3 years ago

Hi, I think 4e2ff7851127cd85c3e7d78b42eb884d0cda0ac3 should fix this, if you could give that a try...