Browse Source

Fixed rescan/update

itec78 3 years ago
parent
commit
da5d4c594b
1 changed files with 32 additions and 30 deletions
  1. 32 30
      playlistalo.py

+ 32 - 30
playlistalo.py

@@ -458,7 +458,7 @@ def plaympd():
         if os.path.exists("mpd"):
             shutil.rmtree("mpd")
             os.makedirs("mpd")
-        client.rescan()
+        client.update()
 
         #aggiunge l'annuncio iniziale
         #addstartannounce()
@@ -470,8 +470,9 @@ def plaympd():
         for f in plt:
             print(f[0])
             copyfile(f[0], "mpd/" + f[0])
-        client.rescan()
-        time.sleep(0.5)
+        client.update()
+        while 'updating_db' in client.status():
+            pass
         for f in plt:
             client.add(f[0])
 
@@ -540,36 +541,37 @@ def mpdadd(client, listlen):
     for f in plt:
         #print(f[0])
         copyfile(f[0], "mpd/" + f[0])
-    client.rescan()
-    time.sleep(0.5)
+    client.update()
+    while 'updating_db' in client.status():
+        pass
 
-    #cancella tutto tranne la prima
-    for x in client.playlistinfo()[1:]:
-        client.delete(1)
-    time.sleep(0.5)
-    #e rifa la playlist
-    for f in plt:
-        client.add(f[0])
-    time.sleep(0.5)
-
-    # print("------------------")
-    # playlist=client.playlistinfo()
-    # for f in plt[:len(playlist)-1]:
-    #     i = plt.index(f) + 1
-    #     #print(f[0] +" - "+ playlist[i]['file'])
-    #     if f[0] != playlist[i]['file']:
-    #         break
-    #     else:
-    #         print("Mantengo " + f[0])
-        
-    # #print (i)
-    # for x in client.playlistinfo()[i:]:
-    #     print("Cancello " + x['file'])
-    #     client.delete(i)
+    # #cancella tutto tranne la prima
+    # for x in client.playlistinfo()[1:]:
+    #     client.delete(1)
+    # time.sleep(0.5)
     # #e rifa la playlist
-    # for f in plt[i-1:]:
-    #     print("Aggiungo " + f[0])
+    # for f in plt:
     #     client.add(f[0])
+    # time.sleep(0.5)
+
+    print("------------------")
+    playlist=client.playlistinfo()
+    for f in plt[:len(playlist)-1]:
+        i = plt.index(f) + 1
+        #print(f[0] +" - "+ playlist[i]['file'])
+        if f[0] != playlist[i]['file']:
+            break
+        else:
+            print("Mantengo " + f[0])
+        
+    #print (i)
+    for x in client.playlistinfo()[i:]:
+        print("Cancello " + x['file'])
+        client.delete(i)
+    #e rifa la playlist
+    for f in plt[i-1:]:
+        print("Aggiungo " + f[0])
+        client.add(f[0])
 
     #consumo la prima
     consume(plt[0][0])