我们想在 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文件?也许我做错了,希望有人可以帮助我。
答案 0 :(得分:0)
我已将WAV文件(startup.wav)复制到Visual Studio中的Assets文件夹中
喜欢这个权利吗?
这不是正确的地方。您可以在调试时检查mediaPlayer.Source的IsOpen属性,该属性为false。
您需要将音频文件放在appx文件夹中,对我来说,就像这样:PlayAudioBackground \ bin \ ARM \ Debug \ AppX \ Assets。
您可以尝试一下。
参考:“ URI schemes - ms-appx”“ UWP sample - Background media playback sample”
更新:
对于后台应用程序,默认情况下资产文件夹不包括在项目中。如果要使用此文件夹添加音频文件,则可以在解决方案资源管理器中右键单击资产文件夹,然后选择“包含在项目中”。然后将音频文件属性设置为“ Build Action-Content”和“ Copy to output directory-Copy Always”。
答案 1 :(得分:0)
感谢您的所有帮助。当我尝试使用第三个覆盆子时,不知道为什么,但是也许我运气不好,两个头孔端口坏了:)。
感谢您的协助!