簡體   English   中英

在Visual Studio 2013終極項目中使用FFMPEG,鏈接錯誤LNK2019

[英]Using FFMPEG in a Visual Studio 2013 ultimate project, linking error LNK2019

我正在嘗試在項目中使用FFmpeg庫和TIFF lib(我也在制作.dll和/或.exe)。 我搜索了此處和Google提供的答案,並將/ dev / include 64位(32位VS制作64位項目)鏈接到其他包含目錄,並將64位共享/ bin(庫文件)鏈接到鏈接器->附加庫目錄,並添加了鏈接器->附加依賴-> avformat.lib。 我也將.dll文件復制到了我的項目文件夾中,但仍然繼續獲取LNK2019。 這是我使用庫和編譯器輸出的方式:

extern "C" {

#ifndef inline
#define inline __inline
#endif
#ifndef UINT64_C
#define UINT64_C uint64_t
#define INT64_C int64_t
#endif

#include <libavcodec\avcodec.h>
#include <libavformat\avformat.h>
#include <libswscale\swscale.h>

}
#pragma comment(lib, "avformat.lib")

1>------ Build started: Project: GHSOM_V3, Configuration: FFmpeg x64 ------
1>  ffmpeg_io.cpp
1>ffmpeg_io.obj : error LNK2019: unresolved external symbol av_malloc referenced in function "struct AVFrame * __cdecl alloc_picture(enum AVPixelFormat,int,int)" (?alloc_picture@@YAPEAUAVFrame@@W4AVPixelFormat@@HH@Z)
1>ffmpeg_io.obj : error LNK2019: unresolved external symbol av_free referenced in function "struct AVFrame * __cdecl alloc_picture(enum AVPixelFormat,int,int)" (?alloc_picture@@YAPEAUAVFrame@@W4AVPixelFormat@@HH@Z)
1>ffmpeg_io.obj : error LNK2019: unresolved external symbol av_freep referenced in function "void __cdecl aviCloseWriter(struct tagAVIWriter *)" (?aviCloseWriter@@YAXPEAUtagAVIWriter@@@Z)
1>ffmpeg_io.obj : error LNK2019: unresolved external symbol av_rescale_q referenced in function "void __cdecl aviWriteFrame(struct tagAVIWriter *,unsigned char *)" (?aviWriteFrame@@YAXPEAUtagAVIWriter@@PEAE@Z)
1>ffmpeg_io.obj : error LNK2019: unresolved external symbol av_frame_alloc referenced in function "struct AVFrame * __cdecl alloc_picture(enum AVPixelFormat,int,int)" (?alloc_picture@@YAPEAUAVFrame@@W4AVPixelFormat@@HH@Z)
1>ffmpeg_io.obj : error LNK2019: unresolved external symbol avcodec_open2 referenced in function "void __cdecl initiate_avi_create(struct tagAVIWriter *,int,int)" (?initiate_avi_create@@YAXPEAUtagAVIWriter@@HH@Z)
1>ffmpeg_io.obj : error LNK2019: unresolved external symbol avcodec_close referenced in function "void __cdecl aviCloseReader(struct tagAVIReader *)" (?aviCloseReader@@YAXPEAUtagAVIReader@@@Z)
1>ffmpeg_io.obj : error LNK2019: unresolved external symbol av_init_packet referenced in function "void __cdecl aviWriteFrame(struct tagAVIWriter *,unsigned char *)" (?aviWriteFrame@@YAXPEAUtagAVIWriter@@PEAE@Z)
1>ffmpeg_io.obj : error LNK2019: unresolved external symbol av_free_packet referenced in function "void __cdecl aviReadFrame(struct tagAVIReader *,unsigned char *,int)" (?aviReadFrame@@YAXPEAUtagAVIReader@@PEAEH@Z)
1>ffmpeg_io.obj : error LNK2019: unresolved external symbol avcodec_find_decoder referenced in function "void __cdecl initiate_avi_open(struct tagAVIReader *)" (?initiate_avi_open@@YAXPEAUtagAVIReader@@@Z)
1>ffmpeg_io.obj : error LNK2019: unresolved external symbol avcodec_decode_video2 referenced in function "void __cdecl aviReadFrame(struct tagAVIReader *,unsigned char *,int)" (?aviReadFrame@@YAXPEAUtagAVIReader@@PEAEH@Z)
1>ffmpeg_io.obj : error LNK2019: unresolved external symbol avcodec_find_encoder referenced in function "void __cdecl initiate_avi_create(struct tagAVIWriter *,int,int)" (?initiate_avi_create@@YAXPEAUtagAVIWriter@@HH@Z)
1>ffmpeg_io.obj : error LNK2019: unresolved external symbol avcodec_find_encoder_by_name referenced in function "void __cdecl initiate_avi_create(struct tagAVIWriter *,int,int)" (?initiate_avi_create@@YAXPEAUtagAVIWriter@@HH@Z)
1>ffmpeg_io.obj : error LNK2019: unresolved external symbol avcodec_encode_video referenced in function "void __cdecl aviWriteFrame(struct tagAVIWriter *,unsigned char *)" (?aviWriteFrame@@YAXPEAUtagAVIWriter@@PEAE@Z)
1>ffmpeg_io.obj : error LNK2019: unresolved external symbol avpicture_fill referenced in function "struct AVFrame * __cdecl alloc_picture(enum AVPixelFormat,int,int)" (?alloc_picture@@YAPEAUAVFrame@@W4AVPixelFormat@@HH@Z)
1>ffmpeg_io.obj : error LNK2019: unresolved external symbol avpicture_get_size referenced in function "struct AVFrame * __cdecl alloc_picture(enum AVPixelFormat,int,int)" (?alloc_picture@@YAPEAUAVFrame@@W4AVPixelFormat@@HH@Z)
1>ffmpeg_io.obj : error LNK2019: unresolved external symbol sws_getContext referenced in function "void __cdecl initiate_avi_create(struct tagAVIWriter *,int,int)" (?initiate_avi_create@@YAXPEAUtagAVIWriter@@HH@Z)
1>ffmpeg_io.obj : error LNK2019: unresolved external symbol sws_scale referenced in function "void __cdecl aviReadFrame(struct tagAVIReader *,unsigned char *,int)" (?aviReadFrame@@YAXPEAUtagAVIReader@@PEAEH@Z)
1>tiff_io.obj : error LNK2019: unresolved external symbol TIFFClose referenced in function "void __cdecl tiffReadRGBA(char *,int *,int *,unsigned char *)" (?tiffReadRGBA@@YAXPEADPEAH1PEAE@Z)
1>tiff_io.obj : error LNK2019: unresolved external symbol TIFFGetField referenced in function "void __cdecl tiffReadRGBA(char *,int *,int *,unsigned char *)" (?tiffReadRGBA@@YAXPEADPEAH1PEAE@Z)
1>tiff_io.obj : error LNK2019: unresolved external symbol TIFFSetField referenced in function "void __cdecl tiffWriteRGBA(char *,int,int,unsigned char *)" (?tiffWriteRGBA@@YAXPEADHHPEAE@Z)
1>tiff_io.obj : error LNK2019: unresolved external symbol TIFFReadRGBAImage referenced in function "void __cdecl tiffReadRGBA(char *,int *,int *,unsigned char *)" (?tiffReadRGBA@@YAXPEADPEAH1PEAE@Z)
1>tiff_io.obj : error LNK2019: unresolved external symbol TIFFOpen referenced in function "void __cdecl tiffReadRGBA(char *,int *,int *,unsigned char *)" (?tiffReadRGBA@@YAXPEADPEAH1PEAE@Z)
1>tiff_io.obj : error LNK2019: unresolved external symbol TIFFWriteEncodedStrip referenced in function "void __cdecl tiffWriteRGBA(char *,int,int,unsigned char *)" (?tiffWriteRGBA@@YAXPEADHHPEAE@Z)
1>Video.obj : error LNK2019: unresolved external symbol "void __cdecl DCT2d(double *,double *,long,long)" (?DCT2d@@YAXPEAN0JJ@Z) referenced in function "void __cdecl ForwardDCT(class DataShuffle *,unsigned char *,char *,int,int,int,int,int,bool)" (?ForwardDCT@@YAXPEAVDataShuffle@@PEAEPEADHHHHH_N@Z)
1>Video.obj : error LNK2019: unresolved external symbol "void __cdecl IDCT2d(double *,double *,long,long)" (?IDCT2d@@YAXPEAN0JJ@Z) referenced in function "void __cdecl ExportVideoFromDCT(class DataShuffle *,char *,char *,int,int,int,int)" (?ExportVideoFromDCT@@YAXPEAVDataShuffle@@PEAD1HHHH@Z)
1>Video.obj : error LNK2019: unresolved external symbol "void __cdecl CopyToZigZag(double *,double *,long,long,long)" (?CopyToZigZag@@YAXPEAN0JJJ@Z) referenced in function "void __cdecl ForwardDCT(class DataShuffle *,unsigned char *,char *,int,int,int,int,int,bool)" (?ForwardDCT@@YAXPEAVDataShuffle@@PEAEPEADHHHHH_N@Z)
1>Video.obj : error LNK2019: unresolved external symbol "void __cdecl CopyFromZigZag(double *,double *,long,long,long)" (?CopyFromZigZag@@YAXPEAN0JJJ@Z) referenced in function "void __cdecl ExportVideoFromDCT(class DataShuffle *,char *,char *,int,int,int,int)" (?ExportVideoFromDCT@@YAXPEAVDataShuffle@@PEAD1HHHH@Z)

您還必須鏈接其他FFmpeg庫(avcodec,avutil等)。 對於libtiff也是一樣。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM