2016-05-08 2 views
3

Ich versuche bpm in MP3-Datei wie diese eingebettet zu lesen:Wie Beats-pro-Minute-Tag von MP3-Datei in Windows Store-Apps C# lesen?

bpm tag im trying to read

i

Windows.Storage.FileProperties.MusicProperties 

verwendet haben versucht, aber es enthält nur Titel, Sänger usw. es kann‘ t lese die BPM, die ich vorher gezeigt habe.

im Blick in https://taglib.github.io/ scheinen sie nicht solche Funktion zu haben. gibt es eine mögliche Lösung?

+0

MusicProperties.RetrievePropertiesAsync gibt ein Wörterbuch. Fragen Sie nach "TBPM", dem ID3-Tag für Beats pro Minute. –

Antwort

2

Wenn Sie Ihre Musikdatei in ein StorageFile geladen haben, werden Sie wollen, wie dies einen ähnlichen Aufruf im Code platzieren:

var fileProps = await file.Properties.RetrievePropertiesAsync(null);

Dies Ihnen eine Liste aller im System erhalten Eigenschaften freigelegt als Dictionary<string, object>.

Anschließend können Sie den BPM-Wert erhalten wie folgt:

if (fileProps.ContainsKey("System.Music.BeatsPerMinute")) 
{ 
    var bpmObj = fileProps["System.Music.BeatsPerMinute"]; 
    if (bpmObj != null) 
    { 
     var bpm = bpmObj.ToString(); 
    } 
} 

Sie können eine vollständige Liste der verfügbaren Dateieigenschaften finden Sie hier: https://msdn.microsoft.com/en-us/library/windows/desktop/dd561977(v=vs.85).aspx

+1

diese Lösung funktioniert für mich :) danke .. – RJJatson