关于声音问题(200分)

  • 主题发起人 主题发起人 讨饭秀才
  • 开始时间 开始时间

讨饭秀才

Unregistered / Unconfirmed
GUEST, unregistred user!
本人编程放一段声音,需要得到声音文件的播放开始和结束的时间,不知到怎么做,还请帮忙。
时间要精确。
 
得到声音文件的播放开始和结束的时间???
照我的理解就是 文件开始播放可以读取一下系统时间,结束时在读取一次!
你只要在点击开始或者结束按钮时出发相关事件(读取系统时间)即可啊!
 
TDateTime DateTime1 = Time();
AnsiString str1=TimeToStr(DateTime1);

sndPlaySound("c://12.wav",SND_ASYNC);
TDateTime DateTime2 = Time();
AnsiString str=TimeToStr(DateTime2);
ShowMessage(str1);
ShowMessage(str);

//-----------无法得到开始和结束的时间
 
为什么要用sndPlaySound函数???
用Mediaplayer很简单实现!
 
定义一个Boolean表示是否播放结束!
如:var End:Boolean;

Position:=start;表示开始!End:=False;
当结束时,Position:=end;

End:=True;

 
buttonclick1()
begin

mediaplayer1.filename:='c:/12.wav';
mediaplayer1.open;
mediaplayer1.play;
button1.caption:=timetostr(time());
end;

procedure TForm1.MediaPlayer1Notify(Sender: TObject);
begin

button1.caption:=timetostr(time());
end;


 
后退
顶部