René Nyffenegger's collection of things on the web
René Nyffenegger on Oracle - Most wanted - Feedback -
 

Missing libraries for AVI creation in MinGW

It seems that libavicap32.a, libmsvfw32.a and libavifil.a are missing in MinGW's distribution. However, they can be created with the dlltool. This page aims at demonstrating how this is done.
dlltool -k --output-lib libavifil32.a --def avifil32.def
dlltool -k --output-lib libmsvfw32.a  --def msvfw32.def
dlltool -k --output-lib libavicap32.a --def avicap32.def
Here are the .def files:
LIBRARY AVICAP32.dll
 EXPORTS
 AppCleanup@4
 capCreateCaptureWindowA@32
 capCreateCaptureWindowW@32
 capGetDriverDescriptionA@20
 capGetDriverDescriptionW@20
 videoThunk32@20
LIBRARY AVIFIL32.dll
 EXPORTS
 AVIBuildFilter@12
 AVIBuildFilterA@12
 AVIBuildFilterW@12
 AVIClearClipboard@0
 AVIFileAddRef@4
 AVIFileCreateStream@12
 AVIFileCreateStreamA@12
 AVIFileCreateStreamW@12
 AVIFileEndRecord@4
 AVIFileExit@0
 AVIFileGetStream@16
 AVIFileInfo@12
 AVIFileInfoA@12
 AVIFileInfoW@12
 AVIFileInit@0
 AVIFileOpen@16
 AVIFileOpenA@16
 AVIFileOpenW@16
 AVIFileReadData@16
 AVIFileRelease@4
 AVIFileWriteData@16
 AVIGetFromClipboard@4
 AVIMakeCompressedStream@16
 AVIMakeFileFromStreams@12
 AVIMakeStreamFromClipboard@12
 AVIPutFileOnClipboard@4
 AVISave
 AVISaveA
 AVISaveOptions@20
 AVISaveOptionsFree@8
 AVISaveV@24
 AVISaveVA@24
 AVISaveVW@24
 AVISaveW
 AVIStreamAddRef@4
 AVIStreamBeginStreaming@16
 AVIStreamCreate@16
 AVIStreamEndStreaming@4
 AVIStreamFindSample@12
 AVIStreamGetFrame@8
 AVIStreamGetFrameClose@4
 AVIStreamGetFrameOpen@8
 AVIStreamInfo@12
 AVIStreamInfoA@12
 AVIStreamInfoW@12
 AVIStreamLength@4
 AVIStreamOpenFromFile@24
 AVIStreamOpenFromFileA@24
 AVIStreamOpenFromFileW@24
 AVIStreamRead@28
 AVIStreamReadData@16
 AVIStreamReadFormat@16
 AVIStreamRelease@4
 AVIStreamSampleToTime@8
 AVIStreamSetFormat@16
 AVIStreamStart@4
 AVIStreamTimeToSample@8
 AVIStreamWrite@32
 AVIStreamWriteData@16
 CreateEditableStream@8
 DllCanUnloadNow@0
 DllGetClassObject@12
 EditStreamClone@8
 EditStreamCopy@16
 EditStreamCut@16
 EditStreamPaste@24
 EditStreamSetInfo@12
 EditStreamSetInfoA@12
 EditStreamSetInfoW@12
 EditStreamSetName@8
 EditStreamSetNameA@8
 EditStreamSetNameW@8
 IID_IAVIEditStream
 IID_IAVIFile
 IID_IAVIStream
 IID_IGetFrame
LIBRARY MSVFW32.dll
 EXPORTS
 DrawDibBegin@32
 DrawDibChangePalette@16
 DrawDibClose@4
 DrawDibDraw@52
 DrawDibEnd@4
 DrawDibGetBuffer@16
 DrawDibGetPalette@4
 DrawDibOpen@0
 DrawDibProfileDisplay@4
 DrawDibRealize@12
 DrawDibSetPalette@8
 DrawDibStart@8
 DrawDibStop@4
 DrawDibTime@8
 GetOpenFileNamePreview@4
 GetOpenFileNamePreviewA@4
 GetOpenFileNamePreviewW@4
 GetSaveFileNamePreviewA@4
 GetSaveFileNamePreviewW@4
 ICClose@4
 ICCompress
 ICCompressorChoose@24
 ICCompressorFree@4
 ICDecompress
 ICDraw
 ICDrawBegin
 ICGetDisplayFormat@24
 ICGetInfo@12
 ICImageCompress@28
 ICImageDecompress@20
 ICInfo@12
 ICInstall@20
 ICLocate@20
 ICMThunk32@20
 ICOpen@12
 ICOpenFunction@16
 ICRemove@12
 ICSendMessage@16
 ICSeqCompressFrame@20
 ICSeqCompressFrameEnd@4
 ICSeqCompressFrameStart@8
 MCIWndCreate
 MCIWndCreateA
 MCIWndCreateW
 MCIWndRegisterClass
 StretchDIB@48
 VideoForWindowsVersion@0