Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.07.11;
Скачать: CL | DM;

Вниз

Длительность AVI   Найти похожие ветки 

 
Boyko   (2005-03-09 18:32) [0]

Подскажите плз.
Как можно узнать длительность файла AVI (ч:м:с:мс)?
Может готовый компонент есть?


 
Анонимщик1   (2005-03-09 18:43) [1]

Шокирующая постановка вопроса. Ничего в голову не приходит.


 
Pesh   (2005-03-09 21:10) [2]

можно воспользоваться стандартным компонентом TMediaPlayer с закладки System.
MediaPlayer1.TimeFormat := tfMilliseconds;
ShowMessage("Number of milliseconds = " + IntToStr (MediaPlayer1.Length));

Помни, что в секунде 1000 мс, а секунды во всё остальное можно перевести так:
function SecToTime (Secs: Integer): TDateTime;
var iHr,iMin,iSec: Integer;
begin
iHr:=Secs div 3600;
iMin:=(Secs-iHr*3600) div 60;
iSec:=(Secs-iHr*3600) mod 60;
Result:=EncodeTime (iHr,iMin,iSec,0);
end;


 
Sour Smile   (2005-03-12 14:18) [3]


> Pesh   (09.03.05 21:10) [2]
> можно воспользоваться стандартным компонентом TMediaPlayer
> с закладки System.

TMediaPlayer - не очень надёжное решение... Также не нажёное и это: http://delphibase.spb.ru/?action=viewfunc&topic=mediasound&id=10430

> Помни, что в секунде 1000 мс, а секунды во всё остальное
> можно перевести так:
> function SecToTime (Secs: Integer): TDateTime;
> var iHr,iMin,iSec: Integer;
> begin
> iHr:=Secs div 3600;
> iMin:=(Secs-iHr*3600) div 60;
> iSec:=(Secs-iHr*3600) mod 60;
> Result:=EncodeTime (iHr,iMin,iSec,0);
> end;

Если количество секунд будет 86400 или больше - получим ошибку: "Invalid argument to time encode."...
Проще и надёжней так:
function SecToTime (Secs: Integer): TTime;
begin
 Result:=Secs/SecsPerDay
end;


для микросекунд:
function MSecToTime (Secs: Integer): TTime;
begin
 Result:=Secs/MSecsPerDay
end;



Страницы: 1 вся ветка

Текущий архив: 2005.07.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.064 c
3-1117530104
Hereticsoul
2005-05-31 13:01
2005.07.11
TTable


14-1118834936
DVYdm
2005-06-15 15:28
2005.07.11
настройка Apache Server


4-1115215444
ANB
2005-05-04 18:04
2005.07.11
Как эмулировать нажатие клавиш на клавиатуре для чужой программы


6-1112869182
_Alexander_
2005-04-07 14:19
2005.07.11
Сообщение через сокет передается не полностью


1-1118752880
<Lelik>
2005-06-14 16:41
2005.07.11
Про потоки