@@ -10,7 +10,7 @@ from generator.arrange.generate import generate_performance_scores
|
||||
from generator.practice.generate import generate_practice_scores
|
||||
from generator.score import count_json_files, validate_generated_tree
|
||||
from generator.summary import validate_expected_performance_summary, validate_practice_parts
|
||||
from generator.musicxml import load_musicxml
|
||||
from generator.parts import source_paths
|
||||
from generator.engraving import engrave_tree
|
||||
from generator.playback import compile_tree
|
||||
from generator.catalogue import build_catalogue
|
||||
@@ -50,11 +50,12 @@ def generate_assets(args: argparse.Namespace) -> None:
|
||||
if progress:
|
||||
print(f'Assets [{monotonic() - started:.0f}s]: {message}', flush=True)
|
||||
|
||||
report('validating MusicXML sources')
|
||||
report('checking source paths')
|
||||
for source in sorted(data_dir.rglob('*.xml')):
|
||||
if source.parent not in (data_dir / 'practice', data_dir / 'songs'):
|
||||
raise ValueError(f'{source}: MusicXML sources belong directly under data/practice or data/songs')
|
||||
load_musicxml(source)
|
||||
source_paths(data_dir / 'songs')
|
||||
source_paths(data_dir / 'practice', practice=True)
|
||||
output_dir.parent.mkdir(parents=True, exist_ok=True)
|
||||
with tempfile.TemporaryDirectory(prefix='.vamp-assets-', dir=output_dir.parent) as temporary:
|
||||
staged = Path(temporary) / 'assets'
|
||||
|
||||
Reference in New Issue
Block a user