//读取avi文件信息的一个例子
//20200809 Xp vc6 调试通过
//
//#include <Windows.h>
#include <STRING>
#include <afx.h>
#include <stdio.h>
#include <Vfw.h>
#pragma comment(lib, "vfw32")
void AVItoBmp(CString strAVIFileName, CString strBmpDir);
void main()
{
printf("abab\n");
AVItoBmp("b.avi","");
}
void AVItoBmp(CString strAVIFileName, CString strBmpDir)
{
// TODO: 在此添加控件通知处理程序代码
AVIFileInit();
PAVIFILE avi;
int res=AVIFileOpen(&avi, strAVIFileName, OF_READ, NULL);
AVIFILEINFO afiAviFileInfo;
AVIFileInfo(avi, &afiAviFileInfo, sizeof(AVIFILEINFO));
DWORD dwWidth = afiAviFileInfo.dwWidth;
DWORD dwHeight = afiAviFileInfo.dwHeight;
printf(" Width: %d\n Height: %d\n",dwWidth,dwHeight);
DWORD dwStreams = afiAviFileInfo.dwStreams;
printf("Streams= %d\n",dwStreams);
DWORD dwMaxBytesPerSec = afiAviFileInfo.dwMaxBytesPerSec;
printf("dwMaxBytesPerSec= %d\n",dwMaxBytesPerSec);
DWORD dwScale = afiAviFileInfo.dwScale;
printf("dwScale= %d\n",dwScale);
DWORD dwRate = afiAviFileInfo.dwRate;
printf("dwRate= %d\n",dwRate);
DWORD dwLength = afiAviFileInfo.dwLength;
printf("dwLength= %d\n",dwLength);
int n = GetLastError();
if (res!=AVIERR_OK)
{
//an error occures
if (avi!=NULL)
AVIFileRelease(avi);
return ;
}
AVIFileExit();
}