无法使用最新的Windows 10 IoT核心版在RPi3上播放声音文件(WAV)

时间:2019-02-27 14:52:30

标签: c# uwp raspberry-pi3 windows-10-iot-core

我们想在 Windows 10 IoT核心版 上无头UWP 后台应用程序中的某个位置播放WAV文件。为此,我遵循了Microsoft文档并使用了以下方法:

var mediaPlayer = new MediaPlayer();
mediaPlayer.Source = MediaSource.CreateFromUri(new Uri("ms-appx:///Assets/startup.wav"));
mediaPlayer.Play();

我已将WAV文件(startup.wav)复制到Visual Studio中的Assets文件夹,将其设置为始终复制到输出并编译UWP应用程序。无论我如何尝试,我都不会得到任何声音输出。我尝试了2个Raspberry PI(均为3版),并将PC扬声器连接到Raspberry的输出插孔。

我还向应用程序授予了package.appxmanifest中的正确权限:

<uap3:Capability Name="backgroundMediaPlayback"/>

如果我转到设备门户,我会在右侧看到默认的Raspberry pi 2音频,其中的滑动条处于活动状态。我想这是一个标志,驱动程序是正确的。

我该怎么做才能在无头后台 UWP应用程序中播放简单的wav文件?也许我做错了,希望有人可以帮助我。

2 个答案:

答案 0 :(得分:0)

  

我已将WAV文件(startup.wav)复制到Visual Studio中的Assets文件夹中

喜欢这个权利吗?

enter image description here

这不是正确的地方。您可以在调试时检查mediaPlayer.Source的IsOpen属性,该属性为false。

enter image description here

您需要将音频文件放在appx文件夹中,对我来说,就像这样:PlayAudioBackground \ bin \ ARM \ Debug \ AppX \ Assets。

enter image description here

您可以尝试一下。

参考:“ URI schemes - ms-appx”“ UWP sample - Background media playback sample

更新

对于后台应用程序,默认情况下资产文件夹不包括在项目中。如果要使用此文件夹添加音频文件,则可以在解决方案资源管理器中右键单击资产文件夹,然后选择“包含在项目中”。然后将音频文件属性设置为“ Build Action-Content”和“ Copy to output directory-Copy Always”。

enter image description here

enter image description here

答案 1 :(得分:0)

感谢您的所有帮助。当我尝试使用第三个覆盆子时,不知道为什么,但是也许我运气不好,两个头孔端口坏了:)。

感谢您的协助!