获取歌曲元数据

时间:2013-07-31 22:26:53

标签: c# windows-store-apps

我正在尝试将绝对网址中的元数据转换为歌曲,例如http://www.<url>.com/<file>.mp3

我该如何做到这一点。我对C#api有点新意,所以我在使用什么类方面有点迷失。

我发现这个代码块来自于搜索:

StorageFile newFile = //file
var prop =await  newFile.Properties.GetMusicPropertiesAsync();
string album = prop.Album;

我想知道//文件字段中的内容是什么?什么类型StorageFile将采用URI?

谢谢。

1 个答案:

答案 0 :(得分:0)

首先,您可以使用以下命令将mp3文件下载到本地:

WebClient Client = new WebClient ();
Client.DownloadFile("http://myserver.com/indie/band1.mp3", "band1.mp3");

然后,使用TagLibSharp https://github.com/mono/taglib-sharp

//Local reference to the file
TagLib.File file = TagLib.File.Create("band1.mp3");

//Get the file metadata
Console.WriteLine("Tags on disk: " + file.TagTypesOnDisk);
Console.WriteLine("Tags in object: " + file.TagTypes);

Write ("Grouping", file.Tag.Grouping);
Write ("Title", file.Tag.Title);
Write ("Album Artists", file.Tag.AlbumArtists);
Write ("Performers", file.Tag.Performers);
Write ("Composers", file.Tag.Composers);
Write ("Conductor", file.Tag.Conductor);
Write ("Album", file.Tag.Album);
Write ("Genres", file.Tag.Genres);
Write ("BPM", file.Tag.BeatsPerMinute);
Write ("Year", file.Tag.Year);
Write ("Track", file.Tag.Track);
Write ("TrackCount", file.Tag.TrackCount);
Write ("Disc", file.Tag.Disc);
Write ("DiscCount", file.Tag.DiscCount);