繁体   English   中英

Windows IoT核心版无头音频应用

[英]Windows IoT Core Headless audio app

我正在尝试为Raspberry Pi 2上的Windows IoT Core创建无头的应用程序,该应用程序可以播放来自后台任务的音频。 通常,我会在UI中创建媒体元素,但为此,我只有后台任务。

当我使用以下代码播放新音频时

Windows.Media.Playback.BackgroundMediaPlayer.Current.SetUriSource(new System.Uri("http://stream.funradio.sk:8000/fun128.mp3"));

引发“访问冲突消息”异常。 另外,我尝试创建具有声明的音频类型的常规后台任务,但是调试器返回以下异常:

引发异常:InternetRadioHeadless.winmd中的“ System.Exception”

有没有解决方法,如何在UI中没有MediaElement的情况下播放和控制背景音频?

您可能需要将Audio声明为后台任务类型,如下图所示

在此处输入图片说明

后台任务需要处理OnCanceled事件并关闭BackgroundMediaPlayer!

// Event may raise immediately before continung thread excecution so must be at the end
taskInstance.Canceled += new BackgroundTaskCanceledEventHandler(OnCanceled);

private void OnCanceled(IBackgroundTaskInstance sender, BackgroundTaskCancellationReason reason)
{
    try
    {
        // Shutdown media pipeline
        BackgroundMediaPlayer.Shutdown();
    }
    catch (Exception ex)
    {
        Debug.WriteLine(ex.ToString());
    }

    deferral.Complete(); // signals task completion. 
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM