aboutsummaryrefslogtreecommitdiffstats
path: root/run.py
diff options
context:
space:
mode:
authorAlex Schofield <git@ajschof.me>2025-02-27 10:43:57 +0000
committerAlex Schofield <git@ajschof.me>2025-02-27 10:43:57 +0000
commit96bc8f1574fb5b7a570daa9ad27b3dd960af3818 (patch)
treebfe2d0f3c46352b4d0e069f3d819b8bf9932d986 /run.py
parent3ca25542e4c45577f520eeb7d217ffe379fec920 (diff)
downloadrb-leave-my-bpm-alone-main.tar.gz
rb-leave-my-bpm-alone-main.zip
add env variable to only look at processed tracksHEADmain
Diffstat (limited to 'run.py')
-rw-r--r--run.py15
1 files changed, 14 insertions, 1 deletions
diff --git a/run.py b/run.py
index 2f72475..4b4f011 100644
--- a/run.py
+++ b/run.py
@@ -1,13 +1,26 @@
import xml.etree.ElementTree as xml
import sys
+import os
def main(file):
+ processed_only = os.environ.get("PROCESSED_ONLY", "false").lower() == 'true'
collection = xml.parse(file)
root = collection.getroot()
- tracks = []
+ processed_keys = set()
+ for node in root.findall(".//NODE"):
+ name = node.get("Name")
+ if name is not None and "** Processed" in str(name):
+ for track_ref in node.findall("TRACK"):
+ key = track_ref.get("Key")
+ if key:
+ processed_keys.add(key)
+ break
+ tracks = []
for track in root.iter("TRACK"):
+ if processed_only and track.get("TrackID") not in processed_keys:
+ continue
tempos = track.findall("TEMPO")
if len(tempos) > 1:
bpms = {float(tempo.get("Bpm", "0")) for tempo in tempos}
git.ajschof.me — hosted by ajschofield — powered by cgit