Форум: "Media";
Текущий архив: 2005.01.09;
Скачать: [xml.tar.bz2];
ВнизVideo for Windows Найти похожие ветки
← →
Ozone © (2004-10-05 06:48) [0]Пытаюсь разбить AVI"шку на кадры. Делаю так:
uses vfw;
{...}
var
Error: integer;
pFile: IAVIFile;
AVIFInfo: TAVIFILEINFO;
AVIStream: IAVIStream;
GFrame: IGetFrame;
begin
AVIFileInit;
Error := AVIFileOpen(pFile, PChar(FName), 0, nil);
if Error <> 0 then begin
AVIFileExit;
ShowMessage("< ERROR_OPEN >");
exit;
end;
if AVIFileInfo(pFile, AVIFInfo, SizeOf(AVIFInfo)) <> AVIERR_OK then begin
AVIFileRelease(pFile);
AVIFileExit;
ShowMessage("< ERROR_INFO >");
exit;
end;
Error := AVIFileGetStream(pFile, AVIStream, streamtypeVIDEO, 0);
if Error <> AVIERR_OK then begin
AVIFileRelease(pFile);
AVIFileExit;
ShowMessage("< ERROR_STREAM >");
exit;
end;
GFrame := AVIStreamGetFrameOpen(AVIStream, nil);
if GFrame = nil then begin
AVIStreamRelease(AVIStream);
AVIFileRelease(pFile);
AVIFileExit;
exit;
end;
{ здесь будет покадровое считывание и сохранение - его еще нет!}
AVIStreamGetFrameClose(GFrame);
AVIStreamRelease(AVIStream);
AVIFileRelease(pFile);
AVIFileExit;
end.
Т.е. казалось бы я еще ичего такого не сделал, но при таком коде вылетает "AV at address 00404E78. Read address FEEEFEF6".
В каком месте я напортачил?
← →
PGM_X (2004-10-05 10:29) [1]Может тут не лады "pFile: IAVIFile <> PAVIFILE". Насколько я помню (давно это было :-)) у меня в VFW про COM объекты вообще не было.
Страницы: 1 вся ветка
Форум: "Media";
Текущий архив: 2005.01.09;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.036 c