我想问一下如何在app中获取音频文件的长度。
我正在加载这样的音轨
var installFolder = Windows.ApplicationModel.Package.Current.InstalledLocation;
var resourcesFolder = await installFolder.GetFolderAsync("Resources");
var mp3FilesFolder = await resourcesFolder.GetFolderAsync("mp3Files");
var audioFile = await mp3FilesFolder.GetFileAsync("sound.mp3");
var stream = await audioFile.OpenAsync(Windows.Storage.FileAccessMode.Read);
mediaplayer.SetSource(stream, audioFile.ContentType);
mediaplayer.Play();
但我不知道如何获得赛道的持续时间?
答案 0 :(得分:7)
有两种方法可以获得曲目的持续时间:
var audioFile = await mp3FilesFolder.GetFileAsync("sound.mp3");
MusicProperties properties = await audioFile.Properties.GetMusicPropertiesAsync();
TimeSpan myTrackDuration = properties.Duration;
答案 1 :(得分:1)
假设mediaPlayer
是MediaElement
,您可以使用MediaElement.NaturalDuration
获取持续时间。