![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Подскажите, как можно получить видео и аудио потоки из avi файла с последующим их сохранением в отдельные файлы (видео поток в avi, то есть видео без звука, а аудио поток в wav, то есть сам звук avi).
Есть код (с использованием vfw.pas) , но он не проходит на XP: Код:
var
AVIFile: PAVIFile;
AudioStream: PAVIStream;
VideoStream: PAVIStream;
z: pAVICOMPRESSOPTIONS;
....
AviFileInit;
AudioIn := False; VidioIn := False;
z:=nil;
if AviFileOpenA(AVIFile, PChar(FileName), 0, nil) = 0 then
begin
if AviFileGetStream(AVIFile, AudioStream, StreamTypeAudio, 0) = 0 then
if AviSaveVA(PChar(WAVName), nil, nil, 1, AudioStream, z) = 0 then
AudioIn := True;
if AviFileGetStream(AVIFile, VideoStream, streamtypeVIDEO, 0) = 0 then
if AviSaveVA(PChar(AVIName), nil, nil, 1, VideoStream, z) = 0 then
VidioIn := True;
end;
AviStreamRelease(VideoStream);
AviStreamRelease(AudioStream);
AviFileExit;
end; Не проходит функция AviSaveVA(...), то есть <>0. Подскажите другую функцию с использованием vfw.pas или подправьте эту, если можете. Буду благодарен. ---Резерв--- Последний раз редактировалось M.A.D.M.A.N., 19.01.2014 в 00:21. |
|
#2
|
|||
|
|||
|
Всем спасибо, разобрался. Можно закрывать.
|