У меня есть 20 файлов главы mp3 в списке (на каждую аудиокнигу) в WPF c #, который мне нужно проанализировать, чтобы получить длины.
В настоящее время я зацикливаюсь на следующем коде, который крайне неэффективен
MediaElement currentmp3 = new MediaElement();
currentmp3.UnloadedBehavior = MediaState.Manual;
currentmp3.LoadedBehavior = MediaState.Manual;
currentmp3.MediaOpened += new RoutedEventHandler(currentMp3_MediaOpened);
currentmp3.Source = new Uri(filename);
currentmp3.Play();
currentmp3.Pause();
currentmp3.UpdateLayout();
// if i dont add this it doesnt give the time.
Thread.Sleep(1000);
if (currentmp3.NaturalDuration.HasTimeSpan)
chapter.ChapterLength = currentmp3.NaturalDuration.TimeSpan;
currentmp3.Stop();
Обработка занимает до 30 секунд.
Есть ли какие-либо предложения о том, как повысить производительность, или кто-нибудь знает о каких-либо собственных / сторонних утилитах, которые могут выполнять ту же работу быстрее?