UWP MediaPlayerElement 不播放任何声音

UWP MediaPlayerElement doesn't play any sound

我尝试在 UWP 应用程序中播放 mp3。在下面的简单代码中,它不播放任何声音和视频文件。没有错误信息。 XAML 控件库中的示例运行良好。

private void Button_Click(object sender, RoutedEventArgs e)
{
    MediaPlayerElement _MediaPlayerElement = new MediaPlayerElement();

    _MediaPlayerElement.Source = MediaSource.CreateFromUri(new Uri("D:/alarm.wav"));

    _MediaPlayerElement.AutoPlay = true;
}

使用 FileOpenPicker 没有任何区别,文件路径和名称馈送似乎不是原因。我错过了什么?

首先,当您在代码隐藏中创建一个MediaPlayerElement 控件时,您需要将它添加到父面板以在前台显示它。在这种情况下,它将播放。

另外,uri也不对。您可以使用 URI 方案来引用来自应用程序包、数据文件夹或资源而不是 D 驱动器的应用程序文件。如果要使用全路径播放,可以使用StorageFile.GetFileFromPathAsync()方法或者FileOpenPicker获取文件,然后将文件传给MediaSource.CreateFromStorageFile()方法设置Source。

private void Button_Click(object sender, RoutedEventArgs e)
{
    MediaPlayerElement _MediaPlayerElement = new MediaPlayerElement();
    //uri
    _MediaPlayerElement.Source = MediaSource.CreateFromUri(new Uri("ms-appx:///Assets/xxx.mp3"));

    //file path
    //StorageFile file = await StorageFile.GetFileFromPathAsync(@"D:\xxx.mp3");
    //_MediaPlayerElement.Source = MediaSource.CreateFromStorageFile(file);
    _MediaPlayerElement.AutoPlay = true;

    MyBigPanel.Children.Add(_MediaPlayerElement);
}