Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
46 commits
Select commit Hold shift + click to select a range
28e0365
created nice presets for icra demo
yiyixuu Jun 2, 2026
0821b37
initial commit for new music analysis package
yiyixuu Jun 2, 2026
5f8565c
added new music analysis, not integrated yet and yet to test on linux
yiyixuu Jun 3, 2026
f075565
Rewrite schema + prompt + waypoint conversion for hierarchical (seq,b…
yiyixuu Jun 3, 2026
1eb89d2
analyzed all songs, integrating new analysis structure with LLM promp…
yiyixuu Jun 8, 2026
17a9976
reorganized music (deleted copyrighted ones, filled in all licenses, …
yiyixuu Jun 9, 2026
503a374
disabled caching
yiyixuu Jun 9, 2026
aa99a61
push visualizations of analyzed songs
yiyixuu Jun 9, 2026
f44d1be
updated readme for this branch and added credit for analysis package
yiyixuu Jun 9, 2026
85792eb
added cropping time stamps
yiyixuu Jun 9, 2026
41fe3ec
debugging mistimed motion primitives + dev on mac
yiyixuu Jun 9, 2026
8de9567
made form_x primitives more snappy since PLAN isnt used, updated prom…
yiyixuu Jun 9, 2026
2cbc4b4
removed a preset
yiyixuu Jun 9, 2026
35087c2
adding time to finish param for form_* prims, 2 bar rms info and spec…
yiyixuu Jun 9, 2026
44431d9
reanalyzed all songs for schema v2
yiyixuu Jun 9, 2026
274a658
add fearless
yiyixuu Jun 9, 2026
bc19dfb
Merge remote-tracking branch 'refs/remotes/origin/new-music-analysis'…
yiyixuu Jun 9, 2026
3fd8517
automated crop boundaries in settings when adding a new song
yiyixuu Jun 10, 2026
757e136
update lock file
yiyixuu Jun 10, 2026
c8fc823
regenerated lock file with pixi 0.69.0
yiyixuu Jun 10, 2026
fc815e0
made drones.toml accurate and added mortals
yiyixuu Jun 10, 2026
4e5e21c
analyzed fearless and morals
yiyixuu Jun 10, 2026
2d634d0
refined drones getting too close error to use s#b#t# notation so LLM …
yiyixuu Jun 10, 2026
b199024
added website icon
yiyixuu Jun 10, 2026
668b814
fixed multiple circle calls by using global drone ids, added z_coord …
yiyixuu Jun 10, 2026
6576378
changed prompt to push stacking circles further, got a nice looking p…
yiyixuu Jun 10, 2026
cc038f2
pass tests
yiyixuu Jun 10, 2026
d0af634
config: add radio.uri_base to settings.yaml
yiyixuu Jun 10, 2026
44b6573
test: update conftest to new drones.toml schema, add failing loader test
yiyixuu Jun 10, 2026
33c8741
simplified drones.toml file
yiyixuu Jun 10, 2026
f9c44cb
drone num
yiyixuu Jun 12, 2026
314c8e1
debug why the safety filter is slow af
yiyixuu Jun 18, 2026
60087d5
capping waypoints
yiyixuu Jun 18, 2026
b96d6c7
applied bounds on deploy music player
yiyixuu Jun 19, 2026
2ed86b7
Update settings
ratheron Jun 19, 2026
a740cbb
update pixi version
yiyixuu Jun 19, 2026
70d0d85
update lock file
yiyixuu Jun 19, 2026
675a444
change print to debug
yiyixuu Jun 19, 2026
ee73775
get rid of plan block
yiyixuu Jun 19, 2026
0f078a7
clean up debugs
yiyixuu Jun 19, 2026
25d0842
clean up allin1 install
yiyixuu Jun 19, 2026
8f964be
cleanup
yiyixuu Jun 19, 2026
29d967a
cleanup and ruff fixes
yiyixuu Jun 19, 2026
872067c
remove shim
yiyixuu Jun 19, 2026
272e603
update lock file with shimless natten
yiyixuu Jun 19, 2026
3bcc392
pass tests, clean up imports for librosa and allin1
yiyixuu Jun 19, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/docs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ jobs:
- name: Setup pixi
uses: prefix-dev/setup-pixi@v0.8.1
with:
pixi-version: v0.69.0
pixi-version: v0.70.2
# enable caching of installed envs
cache: true
# only write new caches on main pushes (TODO: Enable)
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/tests.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ jobs:
- name: Setup Pixi (installs pixi + caches envs) # https://github.com/marketplace/actions/setup-pixi
uses: prefix-dev/setup-pixi@v0.9.3 # pin the action version
with:
pixi-version: v0.69.0 # pin the pixi binary version (optional)
pixi-version: v0.70.2 # pin the pixi binary version (optional)
cache: true # enable caching of installed envs
# only write new caches on main pushes (TODO: Enable)
# cache-write: ${{ github.event_name == 'push' && github.ref_name == 'main' }}
Expand Down
9 changes: 9 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,8 @@ openai_api_key.sh

.cursor
docs/ui-previews
docs/specs/
docs/superpowers
test-results
playwright-report
web/dist
Expand All @@ -38,3 +40,10 @@ web/tsconfig.tsbuildinfo

/log/
/install/

# all-in-one analysis byproducts
/demix/
/spec/

CLAUDE.md
memory
32 changes: 32 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,23 @@ The system will automatically:
- Ensure all movements stay within the configured flight boundaries
- Synchronize drone movements with the musical timeline

### Adding your own music

The bundled tracks in `music/songs/` are already analyzed — their structure data lives in
`music/analyzed/`, so they work out of the box. To add a song of your own:

1. Drop the `.mp3` into `music/songs/`.
2. Analyze it:
```bash
pixi run -e music analyze
```
This scans `music/songs/` and analyzes any track that doesn't yet have a cached result,
writing its structure to `music/analyzed/` and a visualization to `music/viz/`. Songs that
are already analyzed are skipped, so the command is safe to re-run. A CUDA GPU is strongly
recommended; analysis still runs on CPU but is much slower.

The new song then shows up in the music library the next time you launch the interface.

### Ready for Deployment

Once you're happy with your generated choreography, you can proceed to deploy it on your physical drone swarm.
Expand Down Expand Up @@ -154,3 +171,18 @@ us as follows:
publisher={IEEE}
}
```

### Music analysis

Song structure (beats, downbeats, and functional segments) is analyzed with the
[All-In-One Music Structure Analyzer](https://github.com/mir-aidj/all-in-one) by Taejun Kim
and Juhan Nam. If you use this project's music analysis, please also cite their work:

```bibtex
@inproceedings{taejun2023allinone,
title={All-In-One Metrical And Functional Structure Analysis With Neighborhood Attentions on Demixed Audio},
author={Kim, Taejun and Nam, Juhan},
booktitle={IEEE Workshop on Applications of Signal Processing to Audio and Acoustics (WASPAA)},
year={2023}
}
```
Binary file removed music/Chopin Noctune Op9No2 [deploy].mp3
Binary file not shown.
Binary file removed music/Chopin Noctune Op9No2.mp3
Binary file not shown.
Binary file removed music/Clair de Lune [deploy].mp3
Binary file not shown.
Binary file removed music/Clair de Lune.mp3
Binary file not shown.
Binary file removed music/Dance of the Flying Machines [deploy].mp3
Binary file not shown.
Binary file removed music/Ed Sheeran - Perfect.mp3
Binary file not shown.
Binary file not shown.
Binary file removed music/On & On.mp3
Binary file not shown.
Binary file removed music/OutKast - Hey Ya!.mp3
Binary file not shown.
Binary file removed music/Radetzky March.mp3
Binary file not shown.
Binary file removed music/Rap God.mp3
Binary file not shown.
Binary file removed music/Royalty [deploy].mp3
Binary file not shown.
Binary file removed music/Still D.R.E.mp3
Binary file not shown.
Binary file removed music/The Blue Danube - Op. 314.mp3
Binary file not shown.
Binary file removed music/Vivaldi Summer [deploy].mp3
Binary file not shown.
Binary file removed music/Vivaldi Summer.mp3
Binary file not shown.
Binary file removed music/Walking on Sunshine.mp3
Binary file not shown.
Empty file added music/analyzed/.gitkeep
Empty file.
Loading
Loading