]> CRI, Mines Paris - PSL - minwii.git/blobdiff - src/minwii/musicxml.py
Nouvelle URL SVN pour Fluidsynth.
[minwii.git] / src / minwii / musicxml.py
index 7468eca2bc602187400e01967acb2213cfb6975c..54d859f8b30501563c3163602aafb691a062a959 100755 (executable)
@@ -176,6 +176,17 @@ class Part(object) :
                 histogram[interval] = 1
             previousNote = note
         return histogram
                 histogram[interval] = 1
             previousNote = note
         return histogram
+    
+    @property
+    def duration(self) :
+        'Durée de référence du morceau en milisecondes'
+        it = self.iterNotes()
+        duration = 0
+        for note, verseIndex in it :
+            duration = duration + note.duration
+        duration = duration * self.quarterNoteDuration # en milisecondes
+        return duration
+        
         
     def pprint(self) :
         for note, verseIndex in self.iterNotes(indefinitely=False) :
         
     def pprint(self) :
         for note, verseIndex in self.iterNotes(indefinitely=False) :
@@ -423,6 +434,7 @@ def main() :
                   printNotes=options.printNotes)
     from pprint import pprint
     pprint(song.intervalsHistogram)
                   printNotes=options.printNotes)
     from pprint import pprint
     pprint(song.intervalsHistogram)
+    print song.duration
 
 
 if __name__ == '__main__' :
 
 
 if __name__ == '__main__' :