【问题标题】:How play a .mp3 (or other) file in a UWP app?如何在 UWP 应用中播放 .mp3(或其他)文件?
【发布时间】:2015-12-12 02:38:17
【问题描述】:

我试试这个:

PlayMusic = new MediaElement();
PlayMusic.AudioCategory = Windows.UI.Xaml.Media.AudioCategory.Media;

PlayMusic.Source = new Uri(@"C:\Users\UserName\Desktop\C:\Users\user\Desktop\Kill The Alarm - Begin Again.mp3");
PlayMusic.Play();

显示屏上不再出现错误消息(try catch 运行干净)。

对不起,简短的描述... 我可以很好地阅读和理解英语,但我很难说和写。

【问题讨论】:

  • 尝试将长文件名用单引号括起来或重命名文件以不包含空格,看看是否有效
  • 通过这种方式没有改变。 ://
  • C:\Users\UserName\Desktop\C:\Users\paulk\Desktop\Kill The Alarm - Begin Again.mp3 不是有效路径,您将子字符串重复到桌面文件夹。

标签: c# audio uwp windows-store-apps windows-store


【解决方案1】:

每个 Windows 应用商店应用程序都有三个文件夹。一个本地文件夹、一个漫游文件夹和一个临时文件夹。每个都以相同的方式访问。本地意味着将资产存储在本地的、特定于应用程序的文件夹中。

答案如下:

StorageFolder Folder = Windows.ApplicationModel.Package.Current.InstalledLocation;
                Folder = await Folder.GetFolderAsync("MyFolder");
                StorageFile sf = await Folder.GetFileAsync("MyFile.mp3");
                PlayMusic.SetSource(await sf.OpenAsync(FileAccessMode.Read), sf.ContentType);
                PlayMusic.Play();

制造。

【讨论】:

    【解决方案2】:

    您不能像这样使用 Windows 存储应用程序读取文件系统上的任何文件。

    如果你只是想测试一下:

    1. 将文件添加到 Visual Studio 中的项目中
    2. 将文件的“构建操作”更改为“内容”。
    3. 将“复制到输出目录”更改为“始终复制”。

    您可能想要做的在this articleRead Local files w/o Picker部分中进行了解释。 This 也可能有帮助。

    【讨论】:

    • 耶啊啊啊!非常感谢你!我做到了! (我将解决方案发布为答案!)
    【解决方案3】:

    将 mySong.mp3 放入您的 Assets 文件夹中。然后在 Visual Studio 中,右键单击您的 Assets 文件夹并选择“添加现有项目”。从您的 Assets 文件夹中添加 mySong.mp3。 在 XAML 中,添加一个播放器:

     <MediaElement x:Name="myPlayer"
     AutoPlay="True" />
    

    在c#中,mySong.mp3会在你设置源时播放:

     Uri newuri = new Uri("ms-appx:///Assets/mySong.mp3");
     myPlayer.Source = newuri;
    

    【讨论】:

      【解决方案4】:

      注册 MediaElement 的MediaFailed-Event 并检查它是否被引发。传递给该方法的 ExceptionRoutedEventArgs 应包含有关为什么无法播放文件的信息。

      【讨论】:

      • 尝试在您的解决方案中包含音频文件,然后更改 URI
      • PlayMusic.Source = new Uri(@"ms-appx://Sleep/Media/KillTheAlarm.mp3");没有变化:/
      猜你喜欢
      • 1970-01-01
      • 2017-04-23
      • 1970-01-01
      • 1970-01-01
      • 2018-02-05
      • 2012-04-11
      • 2013-05-28
      • 2010-09-30
      • 2021-08-14
      相关资源
      最近更新 更多