although PB internal imho provides the interface of IAVIFILE and IAVISTREAM ... most of the API Commands of the AVIFIL32 Library are not accessable by PBs default.
So I did build a wrapper-Userlibrary containing the missing functions for avifile handling under Windows.
The AVIFileInit_() function beside its main purpose does first load the system Library "avifil32.dll", where the AVIFileExit_() function beside its main purpose does close it finally.
The library is done using DLL2PBLib and TailBite.
All avifil32.dll Library calls are done internally using CallFunctionFast().
Download: Avifile32_ext_1.1.zip
(Updated, see inside)
So the following Avifil32 API functions are now directly in PB accessable.
(The Constants/Residents are provided via the "Avifil32_ext.res" file.)
AVIFileInit_
AVIFileExit_
AVIBuildFilter_
AVIClearClipboard_
AVIFileAddRef_
AVIFileCreateStream_
AVIFileEndRecord_
AVIFileGetStream_
AVIFileInfo_
AVIFileOpen_
AVIFileReadData_
AVIFileRelease_
AVIFileWriteData_
AVIGetFromClipboard_
AVIMakeCompressedStream_
AVIMakeFileFromStreams_
AVIMakeStreamFromClipboard_
AVIPutFileOnClipboard_
AVISave_
AVISaveOptions_
AVISaveOptionsFree_
AVISaveV_
AVISaveW_
AVIStreamAddRef_
AVIStreamBeginStreaming_
AVIStreamCreate_
AVIStreamEndStreaming_
AVIStreamFindSample_
AVIStreamGetFrame_
AVIStreamGetFrameClose_
AVIStreamGetFrameOpen_
AVIStreamInfo_
AVIStreamLength_
AVIStreamOpenFromFile_
AVIStreamRead_
AVIStreamReadData_
AVIStreamReadFormat_
AVIStreamRelease_
AVIStreamSampleToTime_
AVIStreamSetFormat_
AVIStreamStart_
AVIStreamTimeToSample_
AVIStreamWrite_
AVIStreamWriteData_
CreateEditableStream_
EditStreamClone_
EditStreamCopy_
EditStreamCut_
EditStreamPaste_
EditStreamSetInfo_
EditStreamSetName_
IID_IAVIEditStream_
IID_IAVIFile_
IID_IAVIStream_
IID_IGetFrame_
mmioFOURCC_
AVIFileClose_
AVIStreamClose_
AVIStreamEnd_
AVIStreamEndTime_
AVIStreamFormatSize_
AVIStreamLengthTime_
AVIStreamSampleSize_
AVIStreamSampleToSample_
AVIStreamStartTime_
AVIStreamNextSample_
AVIStreamPrevSample_
AVIStreamNearestSample_
AVStreamNextKeyFrame_
AVStreamPrevKeyFrame_
AVIStreamNearestKeyFrame_
AVIStreamIsKeyFrame_
An example of a complete AVI Player using some of these API calls will follow these days

I hope it useful.
Greets
Inc.