我想在 Windows 和 MAC OS X 中播放系统声音。在 Windows 中播放声音使用了这样的东西:
PlaySound('C:\Windows\Media\Windows Default.wav', 0, SND_FILENAME + SND_ASYNC);
我确定我必须使用 TMediaPlayer。
我想在 Windows 和 MAC OS X 中播放系统声音。在 Windows 中播放声音使用了这样的东西:
PlaySound('C:\Windows\Media\Windows Default.wav', 0, SND_FILENAME + SND_ASYNC);
我确定我必须使用 TMediaPlayer。
你是对的,你可以使用TMediaPlayer组件,文档明确指出:
TMediaPlayer 播放音频文件和视频文件的音频部分。
要指定当前 TMediaPlayer 播放的媒体文件,请设置 FileName 属性。文件名必须包含文件的路径,以便它可以在内存上本地化,以及扩展名。调用Play和Stop方法开始播放媒体文件,或者停止或暂停正在运行的媒体文件。当前位置通过 CurrentTime 属性指定。
TMediaPlayer 还公开媒体文件属性,例如 Duration、VideoSize、Volume 或 State。
关于支持的文件格式(TMediaCodecManager)。
该文档指出以下内容:
使用 TMediaCodecManager 访问、管理和注册播放媒体文件时要使用的编解码器。
支持的媒体文件格式是每个平台的原生格式:
对于 Windows:
音频格式:.wma、.mp3、.wav
视频格式:.avi、.wmv对于 Mac OS/iOS:
音频格式:.mp3、.caf
视频格式:.mov、.m4v、.mp4使用 TMediaCodecManager,可以注册自定义媒体编解码器以扩展音频/视频功能支持。
快速示例:
procedure TForm1.Button1Click(Sender: TObject);
begin
MediaPlayer1.FileName := 'D:\test.mp3';
MediaPlayer1.Play;
end;
您应该能够跨平台在 Firemonkey 中播放 mp3 文件,但这超出了这个问题的范围。