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

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

Как узнать разрешение видео? [D6, Win95/98, Win2k]


Intell ©   (2003-04-04 06:30:00) 

У меня загружен в TMediaPlayer - видео файл. Нужно узнать отделно его ширину и отдельно высоту.
Типа:
label1.caption:="ля...ля...ля"//Ширина
label2.caption:="ля...ля...ля"//Высота


Плохой человек   (2003-04-07 21:16:00) [1]

Ну и хвала демонам, злорадствовать я не буду, удачи тебе.


Intell   (2003-04-07 11:43:00) [2]

Теперь я понял в чём моя была ошибка, я считывал ширину и высоту, а надо было как у тебя. Спасибо огромное, на путь истинный поставил!


Плохой человек   (2003-04-06 20:44:00) [3]

Что ты сделал? Ничего ты не сделал. Лень тебе самому работать. Это твой плеер или наш общий? Вот код, полностью рабочий:

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ExtCtrls, MPlayer;

type
TForm1 = class(TForm)
mp: TMediaPlayer;
Panel1: TPanel;
Button1: TButton;
OpenDialog1: TOpenDialog;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
begin
If OpenDialog1.Execute then
mp.FileName := OpenDialog1.FileName;
mp.Open;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
ShowMessage(IntToStr(mp.DisplayRect.Top) + "; " +
IntToStr(mp.DisplayRect.Left) + "; " +
IntToStr(mp.DisplayRect.Bottom) + "; " +
IntToStr(mp.DisplayRect.Right) + "; " );
end;

end.


Плохой человек   (2003-04-06 20:20:00) [4]

Во противный. Ну проси, проси...


Intell   (2003-04-06 09:01:00) [5]

Ето я уже читал. Я же попросил исходничек. А то, что должен быть открыт файл, это я тоже знаю. Так и делал. Вся проблема, чтобы прочитать разрешение видео.


Плохой человек   (2003-04-05 21:43:00) [6]

Нужно задать свойство Display и обязательно открыть видео при помощи Open. Так в модуле Borland такой код:

function TMediaPlayer.GetDisplayRect: TRect;
var
RectParms: TMCI_Anim_Rect_Parms;
begin
if MCIOpened and FHasVideo then
begin
FFlags := mci_Anim_Where_Destination;
FError := mciSendCommand( FDeviceID, mci_Where, FFlags, Longint(@RectParms) );
Result := RectParms.rc;
end;
end;

Как видишь, должно быть видео.


Intell   (2003-04-05 18:57:00) [7]

Тогда скажи, как его прочитать, перед тем как прошлое сообщение напечатать я его попробовал прочитать - ноль. Может напишешь строку, если времени не жалко.


Плохой человек   (2003-04-05 18:29:00) [8]

Я же сказал - читай, а не изменяй! Когда видео откроешь, стандартные размеры запишутся в этой свойство. Ну деревня....


Intell   (2003-04-05 12:05:00) [9]

Мне надо не менять разрешение, а узнать истинное разрешение видео.


Плохой человек   (2003-04-04 21:06:00) [10]

После открытия файла читай DisplayRect.


Intell   (2003-04-04 19:23:00) [11]

Чё, в этой рубрике все вымерли что-ли? Или выходные наступают?

Мне очень нужно узнать разрешение видео! //Из Delphi


Intell   (2003-04-04 17:38:00) [12]

Тогда как узнать в одном Label`е ширину и высоту (640X480)


Наверх

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