C# 从播放音乐中获取标签

C# 从播放音乐中获取标签,c#,windows-phone-8,tags,audio-player,C#,Windows Phone 8,Tags,Audio Player,我想问一下,是否有某种方法可以通过编程方式从Windows Phone 8 media player播放的音乐中获取mp3标签 我曾尝试使用BackgroundAudioPlayer实例,XNA框架中的MediaPlayer从wp8音乐播放器播放的歌曲中提取标签,但似乎我无法得到它。 我的结尾是这样的: var player = BackgroundAudioPlayer.Instance; if (player.PlayerState != PlayState.Playing) return;

我想问一下,是否有某种方法可以通过编程方式从Windows Phone 8 media player播放的音乐中获取mp3标签

我曾尝试使用BackgroundAudioPlayer实例,XNA框架中的MediaPlayer从wp8音乐播放器播放的歌曲中提取标签,但似乎我无法得到它。 我的结尾是这样的:

var player = BackgroundAudioPlayer.Instance;
if (player.PlayerState != PlayState.Playing) return;
var track = player.Track;
ArtistTextBlock.Text = track.Artist;
SongTextBlock.Text = track.Title;

但是如果我想用艺术家或歌曲名称字符串来分配文本块,这会抛出
NullReferenceException

如果在分配中抛出NullReferenceException,您应该尝试逐步调试,以确定轨迹变量是否有效或是否确实为null。有人可能会认为player.Track应该是player.NowPlaying或类似的,但我对WP8框架不太了解

除此之外,如果只是偶尔抛出NullRef,则完全有可能在更改轨迹时,播放器没有轨迹,因此返回NULL并导致此问题。确保播放机加载了一个曲目,并且有一个与播放机本身关联的PlayStateChanged事件-如果捕获此事件,您应该能够知道当它“播放”时,您加载了一个文件,然后应该能够证明您加载了一个曲目


我想到的另一个选择是使用.NET的FileInfo库,它可以提供很多关于文件的信息,包括一些标记。使用它可能获得信息。

您是否可能正在寻找类似的信息:谢谢,但不,这不是我要找的。我想从当前播放的歌曲中提取歌手和歌曲名称。我做了一些研究,我应该能够从跟踪对象中提取它。