2015-03-17, 22:26
I'm having trouble getting it built. The advanced settings bit didn't compile, but I just removed that. Then the av_opt_set_int couldn't be found by the compiler. I found that I needed to include "libavutil/opt.h" in DVDAudioCodecFFmpeg.cpp. Then it compiled, but now the linker can't find av_opt_set_int(void*, char const*, long, int).
This is where I'm stuck. 'nm' shows the symbol is present in libavutil.a, but I can't get the linker to understand that.
BTW, having the code in the DVD player logic is fine for my test, but don't we ultimately want it everywhere? The AVCodecContext object is used frequently, so perhaps some kind of factory generator is necessary to make sure all instances use one that applies the DRC setting.
Code:
xbmc/cores/dvdplayer/DVDCodecs/Audio/Audio.a(DVDAudioCodecFFmpeg.o): In function `CDVDAudioCodecFFmpeg::Open(CDVDStreamInfo&, CDVDCodecOptions&)':
/home/halfgaar/tmp/xbmc3/xbmc/cores/dvdplayer/DVDCodecs/Audio/DVDAudioCodecFFmpeg.cpp:92: undefined reference to `av_opt_set_int(void*, char const*, long, int)'
This is where I'm stuck. 'nm' shows the symbol is present in libavutil.a, but I can't get the linker to understand that.
BTW, having the code in the DVD player logic is fine for my test, but don't we ultimately want it everywhere? The AVCodecContext object is used frequently, so perhaps some kind of factory generator is necessary to make sure all instances use one that applies the DRC setting.