I\'m attempting to build some video-reading code around libavformat. After getting the compiled DLLs and .lib
files here, I go to build my code, and the linker
You need to do following all tasks to use libav
with MSVC++
. First goto Zeranoe
Shared
Version, Copy all .dll
files from bin
folder and paste them in the output directory where exe
will be generated.Developer
Version, Copy all .lib
files from lib
folder and paste them with your main c++ file is located (e.g. Folder-1\Folder-2
Where Folder-1
has the .sln
file so you have to put .lib
files in Folder-2
)Developer
Version you downloaded in Step 2 copy all directories from include
folder and paste them in Folder-2 (See details about Folder-2 in step 2)C:\Program Files\Microsoft Visual Studio 10.0\VC\include\
folder.You have to use this extern
because libav
is a C
library.
extern "C" {
#include "libavcodec/avcodec.h"
#include "libavdevice/avdevice.h"
#include "libavfilter/avfilter.h"
#include "libavformat/avformat.h"
#include "libavutil/avutil.h"
}
What about compiling it as a .lib static library?
Fetch the 32-bit libraries and you should be fine :) Your application platform has to match the libraries used (and vica versa).