TWindowsMediaPlayer を使用していますが、問題が発生しています。現在の曲が完成した後、新しい曲を読み込んで再生することができません。
procedure TMainWinForm.WMPlayer1PlayStateChange(Sender: TObject;
NewState: Integer);
begin
if (NewState = wmppsMediaEnded) then
begin
WMPlayer1.URL := FileScanner.SelectSong;
writeln('Play triggered on ', String(WMPlayer1.URL));
WMPlayer1.controls.Play; // DOES NOT PLAY THE SONG!
end;
end;
これにより曲は読み込まれますが、実際に再生するには追加のユーザー操作が必要です。続行する唯一の方法は、wmppsStopped をチェックすることですが、そのイベントが 2 回発生するため、リスト内の奇数番号の曲をすべて取得します。
それを正しく機能させる方法についてのアイデアはありますか?