После установки FFMPEG появляется ошибка линковки
Установил FFMPEG на windows по этой ссылке https://github.com/BtbN/FFmpeg-Builds/releases/download/latest/ffmpeg-master-latest-win64-gpl-shared.zip.
Подключил все include
и lib
. Все функции видны, но при сборке вылазит ошибка линковки.
#include <libavcodec/avcodec.h>
#include <libavformat/avformat.h>
#include <libswscale/swscale.h>
#pragma comment(lib, "avcodec.lib")
#pragma comment(lib, "avformat.lib")
#pragma comment(lib, "swscale.lib")
#pragma comment(lib, "avdevice.lib")
#pragma comment(lib, "avutil.lib")
#pragma comment(lib, "avfilter.lib")
#pragma comment(lib, "postproc.lib")
#pragma comment(lib, "swresample.lib")
int main(int argc, char* argv[])
{
AVFormatContext* pFormatCtx = NULL;
avformat_open_input(&pFormatCtx, argv[1], NULL, 0);
return 0;
}
unresolved external symbol _avformat_open_input referenced in function _main
Ответы (1 шт):
Автор решения: Максим Соколов
→ Ссылка
ffmpeg имеет компоновку "С", поэтому нужно подключать библиотеки, указывая соглашение о компоновке extern "C" { ... }
.
Порядок компиляции приложения с ffmpeg описан в этом ответе.