【发布时间】:2016-07-13 07:40:44
【问题描述】:
是否可以在 Windows 10 的 MediaElement 类中打开 m3u 网络广播流?
示例流将是 http://www.antenne.de/webradio/channels/top-40.m3u
在互联网上打开正常的 mp3 工作完美,但我没有打开任何 m3u 文件。
亲切的问候 迈克尔
【问题讨论】:
标签: win-universal-app mediaelement m3u
是否可以在 Windows 10 的 MediaElement 类中打开 m3u 网络广播流?
示例流将是 http://www.antenne.de/webradio/channels/top-40.m3u
在互联网上打开正常的 mp3 工作完美,但我没有打开任何 m3u 文件。
亲切的问候 迈克尔
【问题讨论】:
标签: win-universal-app mediaelement m3u
从 Windows 10 版本 1607 开始,建议使用 MediaPlayer 类代替 MediaElement 进行媒体播放和轻量级 XAML 控件 MediaPlayerElement.
然后您可以使用 MediaPlaybackList 为 MediaPlayer 创建播放列表。
StorageFolder vfolder = Windows.Storage.KnownFolders.VideosLibrary;
StorageFileQueryResult query = vfolder.CreateFileQueryWithOptions(Constants.QueryOptions);
var files = await query.GetFilesAsync();
MediaPlaybackList playbackList = new MediaPlaybackList();
foreach (StorageFile file in files)
{
MediaSource source = MediaSource.CreateFromStorageFile(file);
playbackList.Items.Add(new MediaPlaybackItem(source));
}
_mediaPlayer = new MediaPlayer();
_mediaPlayer.AutoPlay = true;
_mediaPlayer.Source = playbackList;
MPElement.SetMediaPlayer(_mediaPlayer);
_mediaPlayer.Play();
更多信息Microsoft Docs
【讨论】:
在 m3u 文件(播放列表文件)中,经常有指向音频源的链接。您需要获取文件、打开、解析它以获取 url,并将其中一个提供给 MediaElement。当您尝试流式传输视频时也是如此。
【讨论】:
不支持 M3U 文件,因为它不是媒体文件。播放列表文件格式很简单,并记录了well enough,我建议只解析 M3U 文件并播放单个文件。
很遗憾,Windows 10 UWP 应用无法访问 Playlist 类,这对您的方案很有帮助。它仅适用于桌面应用程序和 Windows 8 应用程序。
【讨论】: