Текущий архив: 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.45 MB
Время: 0.037 c