我需要使用文件URL播放音乐库文件,我将在XAML c#对象中设置为MediaPlayer对象。
我按照
构建了URIStorageFile file = await KnownFolders.MusicLibrary.GetFileAsync(track.Id);
return new Uri("file:///" + file.Path);
URI看起来像这样:streamingUri = {file:/// C:/ Users / user / Music / 04 - 一列火车让一个孤独的声音.mp3}
我需要播放基于URL的方案,这样我才能重复使用相同的逻辑进行网络流媒体。
我如何使这项工作?
答案 0 :(得分:2)
看一看 this sample。它应该给你一些如何从文件播放媒体的想法。
虽然我注意到你说你需要一个基于URI的,但你应该使用一个流作为本地文件。您需要提取的唯一部分是调用设置MediaElement的Source。你可以用2个覆盖来创建一个函数,它应该相对干净。
所以,对于网络流:
void SetMediaElementSource(Uri webStreamUri)
{
MyMediaElement.Source = webStreamUri;
}
对于本地文件:
void SetMediaElementSource(StorageFile file)
{
var stream = await file.OpenAsync(Windows.Storage.FileAccessMode.Read);
MyMediaElement.SetSource(stream, file.ContentType);
}