DelphiのFMXフレームワークを使うと簡単にサウンドファイルを再生できます。
例えばhoge.mp3ファイルを再生する場合には,FormにTMediaPlayerを張り付けて以下のように記述します。
uses
FMX.Media;
MediaPlayer1.FileName := 'hoge.mp3';
if MediaPlayer1.Media<>nil then begin
MediaPlayer1.Play;
end;
これ以外にも,TMediaPlayerは,Stopメソッドや,CurrentTime,Duration,Volume,State などのプロパティも利用できます。
そこで,Windowsで利用できるサウンドファイルを調べてみました。
http://docwiki.embarcadero.com/Libraries/Tokyo/ja/FMX.Media.TMediaCodecManager
によると,
wma .mp3 .wav
となっています。m4aファイルは実装されていません。これはDirectXにコーデックがないためと思われます。
そこで,DirectXのコーデックを
http://www.majorgeeks.com/files/details/windows_8_codecs.html
よりダウンロードしてインストールしました。
さらに,以下のコードをTMediaPlayerの配置されるフォームに記述しました。
initialization
TMediaCodecManager.RegisterMediaCodecClass('.m4a', 'm4a Files', TMediaType.Audio, TWindowsMediaCodec);
そうすると,
MediaPlayer1.FileName := 'hoge.m4a';
if MediaPlayer1.Media<>nil then begin
MediaPlayer1.Play;
end;
でhoge.m4aファイルを再生することができました。
####追記
MSDN
https://msdn.microsoft.com/ja-jp/library/windows/desktop/dd757927(v=vs.85).aspx
によると,m4aファイルがコーデックのインストールなしに利用できると書かれています。もしかすると,mfpackを使うとコーデックのインストールなしにできるかもしれません。
https://sourceforge.net/projects/mfpack/