![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Длина wave
Nomolos © (2004-08-09 21:44:00)Как узнать длину любого WAV (в секундах), вне зависимости от того, сжат он или нет. Понимаю, что вопрос глуп, но разбираться долго. Спасибо
Nomolos (2004-08-10 17:10:00) [1]Простите дурака, сам уже нашёл :) Там битрейт в заголовке прописывается :)
Nomolos (2004-08-10 16:06:00) [2]Нет, без VCL и MMSystem =) У меня драйвер и каждый байт ценен. Надо именно исходя из содержимого файла
Mihey_temporary (2004-08-09 23:04:00) [3]Лучше считать заголовок и выдрать инфу оттуда.
http://www.swissdelphicenter.ch/en/showcode.php?id=1383
Сергей Плоткин (2004-08-09 21:56:00) [4]да, в usesнеобходимо добавить юнит mplayer.
Сергей Плоткин (2004-08-09 21:54:00) [5]Вообще, мне на ум приходит вот такой способ, возможно, не самый корректный и не самый быстрый, но рабочий...
functionGetMediaLength(Filename: String;Form:TForm):Integer;
var
MediaPlayer:TMediaPlayer;
begin
MediaPlayer:=TMediaPlayer.Create( nil);
try
MediaPlayer.FileName:=Filename;
MediaPlayer.Left:=-10000;
MediaPlayer.Parent:=Form;
MediaPlayer.Open;
MediaPlayer.Stop;
Result:=Round(MediaPlayer.Length/1000);
finally
MediaPlayer.Free;
end;
end;</CODE>