gpt4 book ai didi

.net - 在不导入 winmm.dll 或 microsoft.visualbasic.dll 的情况下播放声音文件

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:01:29 24 4
gpt4 key购买 nike

我正在使用 Delphi Prism 编写程序。目标是能够在同一个项目的 windows 和 linux (mono) 上运行。所以,在这一点上,我需要一种无需导入 winmm.dll 或 microsoft.visualbasic.dll 即可为 windows 和 linux(mono) 播放声音文件的方法。

因为我也需要它在单声道上工作,所以我不想使用 visualbasic.dll。过去,它给了我各种各样的问题。

有没有办法不使用这些dll文件来播放声音文件?

更新

无论声音播放器是如何实例化和使用的,它在 Windows 操作系统下总是能正常工作,而在 Linux 上,在单声道下它有时会播放,有时根本不会播放。

第一版:

  var thesound := new SoundPlayer;

if Environment.OSVersion.Platform = Environment.OSVersion.Platform.Unix then
thesound.SoundLocation := '/sounds/Alarms.wav'
else
thesound.SoundLocation:='\sounds\Alarms.wav';

thesound.Load;
thesound.PlayLooping;

第二版

var sp := new SoundPlayer(new FileStream("/sounds/Alarms.wav", FileMode.Open, FileAccess.Read, FileShare.Read));
sp.PlayLooping;

最佳答案

您可以使用 System.Media.SoundPlayer .这是由 Mono 实现的。

关于.net - 在不导入 winmm.dll 或 microsoft.visualbasic.dll 的情况下播放声音文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7615184/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com