Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

FullScreen в DSPack [D6]


zero-g ©   (2004-10-22 15:38:00) 

Доброго времени суток.
У меня такой вопрос...

Играю видео файл по средствам DSPack перехожу в FullScreen
DSVideoWindowEx21.StartFullScreen;
Как мне увеличить саму видео катринку ???

Получается, что в FullScreen перехажу, а видео картинка остается маленькой.
В MediaPlayer было так...
MediaPlayer1.DisplayRect := Rect(0,0,screen.Width,screen.Height);
а в DSVideoWindowEx21.StartFullScreen; как ???


zero-g   (2004-10-23 18:43:00) [1]

Спасибо всем, я разобрался в чем у меня была ошибка.

было так:

form4.DSVideoWindowEx21.StartFullScreen;
form4.dsvideowindowex21.Align := alClient;
form4.dsvideowindowex21.AutoHideCursor := 3000;

а надо было так:

form4.dsvideowindowex21.Align := alClient;
form4.dsvideowindowex21.AutoHideCursor := 3000;
form4.DSVideoWindowEx21.StartFullScreen;


zero-g   (2004-10-23 05:20:00) [2]

либо вот:

procedure TForm1.OpenPlayClick(Sender: TObject);
begin
 if OpenDialog.Execute then
 begin
   FilterGraph.Active := False;
   FilterGraph.Active := true;
   FilterGraph.RenderFile(OpenDialog.FileName);
   FilterGraph.Play;
 end;
end;

procedure TForm1.SnapshotClick(Sender: TObject);
begin
 SampleGrabber.GetBitmap(Image.Picture.Bitmap)
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
 CallBack.Checked := false;
 FilterGraph.ClearGraph;
 FilterGraph.Active := false;
end;

procedure TForm1.SampleGrabberBuffer(sender: TObject; SampleTime: Double;
 pBuffer: Pointer; BufferLen: Integer);
begin
 if CallBack.Checked then
 begin
   Image.Canvas.Lock; // to avoid flickering
   try
     SampleGrabber.GetBitmap(Image.Picture.Bitmap, pBuffer, BufferLen)
   finally
     Image.Canvas.Unlock;
   end;
 end;
end;


zero-g   (2004-10-23 05:17:00) [3]

to programania

>А как сделать захвать кадров
>используя DSVideoWindowEx2?
>У меня SampleGrabber с ним не работает.

Если честно, не знаю... в example используется VideoWindow
Вот сам пример:
http://gnomestudio.amillo.net/temp/sgrab.zip


programania   (2004-10-22 23:48:00) [4]

Я просто увеличиваю размер VideoWindow1
например больше экрана:
left:=-160; width:=screen.width+320;
top:=-120; height:=screen.height+240;
и вызываю VideoWindow1.update;
и даже fullScreen не использую т.к.
в нем свои проблемы.
А как сделать захвать кадров
используя DSVideoWindowEx2?
У меня SampleGrabber с ним не работает.


WondeRu   (2004-10-22 18:09:00) [5]

Берешь буфер картинки и сам рисуешь с помощью StretchDIBits


Наверх

Титульная страница Поиск, карта сайта Написать письмо