Не уверен, используете ли вы компилятор C или C ++ (g ++), но попробуйте защитить ваш #include для ffmpeg с помощью extern "C": компилятор c ++ (если он используется), вероятно, искажает имена функций и, следовательно, ссылку ошибки.
Попытайтесь включить ваш включаемый файл с внешним "C":
#ifdef __cplusplus
extern "C" {
#endif
#include <libavcodec/avcodec.h>
#include <libavformat/avformat.h>
#ifdef __cplusplus
}
#endif