У меня есть Delphi VCL форма с тремя компонентами кнопки.После нажатия кнопки воспроизводится короткий 4-секундный аудиофайл .wav (в файле ресурсов), связанный с этой конкретной кнопкой.
При первом нажатии кнопки после открытия программы раздражающая задержка около 1/2 секунды происходит до начала воспроизведения.Такая задержка не возникает при нажатии кнопки в течение примерно 5 секунд после воспроизведения файла, хотя с более длительными интервалами задержка повторяется.Кроме того, задержка не возникает из-за прерывания воспроизведения нажатием кнопки до завершения воспроизведения текущего файла.
Как я могу избавиться от этих задержек или хотя бы существенно уменьшить их?Сами звуковые файлы не имеют тихих вводов.Вот код (выпуск сообщества Delphi):
unit Unit8;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls;
type
TForm8 = class(TForm)
Button1: TButton;
Button2: TButton;
Button3: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
public
end;
var
Form8: TForm8;
implementation
{$R *.dfm}
procedure TForm8.Button1Click(Sender: TObject);
begin
PlaySound('Resource_1', HInstance, SND_RESOURCE or SND_NODEFAULT or SND_ASYNC or SND_SENTRY);
end;
procedure TForm8.Button2Click(Sender: TObject);
begin
PlaySound('Resource_2', HInstance, SND_RESOURCE or SND_NODEFAULT or SND_ASYNC or SND_SENTRY);
end;
procedure TForm8.Button3Click(Sender: TObject);
begin
PlaySound('Resource_3', HInstance, SND_RESOURCE or SND_NODEFAULT or SND_ASYNC or SND_SENTRY);
end;
end.