dbr*_*lon 12 c# audio-player .net-core
我正试图在.Net Core控制台应用程序中播放声音,我无法解决这个问题.
我正在寻找.Net Core环境中管理的东西,也许就像普通的.Net:
// Not working on .Net Core
System.Media.SoundPlayer player = new System.Media.SoundPlayer(@"c:\mywavfile.wav");
player.Play();
Run Code Online (Sandbox Code Playgroud)
在dotnet核心Github上发现了一个问题,他们在那里谈论它.
https://github.com/dotnet/core/issues/74
他们说没有用于音频播放的高级API,但这个问题已经有9个月了,所以我希望有新的东西?
作为 .NET Core 提供音频支持之前的解决方法,您可以尝试如下操作:
public static void PlaySound(string file)
{
Process.Start(@"powershell", $@"-c (New-Object Media.SoundPlayer '{file}').PlaySync();");
}
Run Code Online (Sandbox Code Playgroud)
当然,这仅适用于安装了 PowerShell 的 Windows,但您可以检测您所在的操作系统并采取相应的操作。
There is now a way to do it with NAudio library (since 1.9.0-preview1) but it will only works on Windows.
So using NAudio, here the code to play a sound in .NET Core assuming you are doing it from a Windows environment.
using (var waveOut = new WaveOutEvent())
using (var wavReader = new WaveFileReader(@"c:\mywavfile.wav"))
{
waveOut.Init(wavReader);
waveOut.Play();
}
Run Code Online (Sandbox Code Playgroud)
For a more global solution, you should go for @Fiodar's one taking advantage of Node.js.
| 归档时间: |
|
| 查看次数: |
6148 次 |
| 最近记录: |