muscriptor 0.1.0__tar.gz → 0.2.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (84) hide show
  1. {muscriptor-0.1.0 → muscriptor-0.2.0}/PKG-INFO +11 -12
  2. {muscriptor-0.1.0 → muscriptor-0.2.0}/README.md +9 -10
  3. {muscriptor-0.1.0 → muscriptor-0.2.0}/pyproject.toml +2 -2
  4. {muscriptor-0.1.0 → muscriptor-0.2.0}/uv.lock +2 -2
  5. {muscriptor-0.1.0 → muscriptor-0.2.0}/.dockerignore +0 -0
  6. {muscriptor-0.1.0 → muscriptor-0.2.0}/.github/workflows/pypi.yml +0 -0
  7. {muscriptor-0.1.0 → muscriptor-0.2.0}/.gitignore +0 -0
  8. {muscriptor-0.1.0 → muscriptor-0.2.0}/.pre-commit-config.yaml +0 -0
  9. {muscriptor-0.1.0 → muscriptor-0.2.0}/.python-version +0 -0
  10. {muscriptor-0.1.0 → muscriptor-0.2.0}/Dockerfile +0 -0
  11. {muscriptor-0.1.0 → muscriptor-0.2.0}/LICENSE +0 -0
  12. {muscriptor-0.1.0 → muscriptor-0.2.0}/deploy.sh +0 -0
  13. {muscriptor-0.1.0 → muscriptor-0.2.0}/muscriptor/__init__.py +0 -0
  14. {muscriptor-0.1.0 → muscriptor-0.2.0}/muscriptor/__main__.py +0 -0
  15. {muscriptor-0.1.0 → muscriptor-0.2.0}/muscriptor/events.py +0 -0
  16. {muscriptor-0.1.0 → muscriptor-0.2.0}/muscriptor/main.py +0 -0
  17. {muscriptor-0.1.0 → muscriptor-0.2.0}/muscriptor/models/__init__.py +0 -0
  18. {muscriptor-0.1.0 → muscriptor-0.2.0}/muscriptor/models/lm.py +0 -0
  19. {muscriptor-0.1.0 → muscriptor-0.2.0}/muscriptor/modules/__init__.py +0 -0
  20. {muscriptor-0.1.0 → muscriptor-0.2.0}/muscriptor/modules/conditioners.py +0 -0
  21. {muscriptor-0.1.0 → muscriptor-0.2.0}/muscriptor/modules/mel_spectrogram.py +0 -0
  22. {muscriptor-0.1.0 → muscriptor-0.2.0}/muscriptor/modules/streaming.py +0 -0
  23. {muscriptor-0.1.0 → muscriptor-0.2.0}/muscriptor/modules/transformer.py +0 -0
  24. {muscriptor-0.1.0 → muscriptor-0.2.0}/muscriptor/server.py +0 -0
  25. {muscriptor-0.1.0 → muscriptor-0.2.0}/muscriptor/tokenizer/__init__.py +0 -0
  26. {muscriptor-0.1.0 → muscriptor-0.2.0}/muscriptor/tokenizer/mt3.py +0 -0
  27. {muscriptor-0.1.0 → muscriptor-0.2.0}/muscriptor/tokenizer/notes.py +0 -0
  28. {muscriptor-0.1.0 → muscriptor-0.2.0}/muscriptor/transcription_model.py +0 -0
  29. {muscriptor-0.1.0 → muscriptor-0.2.0}/muscriptor/utils/__init__.py +0 -0
  30. {muscriptor-0.1.0 → muscriptor-0.2.0}/muscriptor/utils/audio.py +0 -0
  31. {muscriptor-0.1.0 → muscriptor-0.2.0}/muscriptor/utils/auralization.py +0 -0
  32. {muscriptor-0.1.0 → muscriptor-0.2.0}/muscriptor/utils/download.py +0 -0
  33. {muscriptor-0.1.0 → muscriptor-0.2.0}/muscriptor/utils/midi.py +0 -0
  34. {muscriptor-0.1.0 → muscriptor-0.2.0}/muscriptor/utils/resample.py +0 -0
  35. {muscriptor-0.1.0 → muscriptor-0.2.0}/muscriptor/utils/sampling.py +0 -0
  36. {muscriptor-0.1.0 → muscriptor-0.2.0}/swarm.yml +0 -0
  37. {muscriptor-0.1.0 → muscriptor-0.2.0}/tests/__init__.py +0 -0
  38. {muscriptor-0.1.0 → muscriptor-0.2.0}/tests/conftest.py +0 -0
  39. {muscriptor-0.1.0 → muscriptor-0.2.0}/tests/encode_helpers.py +0 -0
  40. {muscriptor-0.1.0 → muscriptor-0.2.0}/tests/test_cli.py +0 -0
  41. {muscriptor-0.1.0 → muscriptor-0.2.0}/tests/test_conditioners.py +0 -0
  42. {muscriptor-0.1.0 → muscriptor-0.2.0}/tests/test_events.py +0 -0
  43. {muscriptor-0.1.0 → muscriptor-0.2.0}/tests/test_integration.py +0 -0
  44. {muscriptor-0.1.0 → muscriptor-0.2.0}/tests/test_midi.py +0 -0
  45. {muscriptor-0.1.0 → muscriptor-0.2.0}/tests/test_notes.py +0 -0
  46. {muscriptor-0.1.0 → muscriptor-0.2.0}/tests/test_sampling.py +0 -0
  47. {muscriptor-0.1.0 → muscriptor-0.2.0}/tests/test_server.py +0 -0
  48. {muscriptor-0.1.0 → muscriptor-0.2.0}/tests/test_transcription_model.py +0 -0
  49. {muscriptor-0.1.0 → muscriptor-0.2.0}/tests/test_transformer.py +0 -0
  50. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/index.html +0 -0
  51. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/logo_muscriptor_final.png +0 -0
  52. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/package-lock.json +0 -0
  53. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/package.json +0 -0
  54. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/pnpm-lock.yaml +0 -0
  55. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/public/favicon.png +0 -0
  56. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/public/kyutai-logo.svg +0 -0
  57. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/public/mirelo-logo.svg +0 -0
  58. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/public/muscriptor-logo-v2.png +0 -0
  59. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/public/muscriptor-logo-v4-pink.svg +0 -0
  60. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/public/muscriptor-mark-v4-pink.svg +0 -0
  61. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/public/muscriptor-wave.svg +0 -0
  62. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/scripts/prepare-soundfonts.mjs +0 -0
  63. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/src/App.tsx +0 -0
  64. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/src/audio.ts +0 -0
  65. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/src/components/ConditioningPanel.tsx +0 -0
  66. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/src/components/Controls.tsx +0 -0
  67. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/src/components/DropOverlay.tsx +0 -0
  68. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/src/components/Footer.tsx +0 -0
  69. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/src/components/InstrumentList.tsx +0 -0
  70. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/src/components/OutputBar.tsx +0 -0
  71. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/src/components/PianoRollCanvas.tsx +0 -0
  72. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/src/components/WelcomeScreen.tsx +0 -0
  73. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/src/components/icons.tsx +0 -0
  74. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/src/hooks/useAudioEngine.ts +0 -0
  75. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/src/hooks/useTranscription.ts +0 -0
  76. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/src/instruments.ts +0 -0
  77. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/src/main.tsx +0 -0
  78. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/src/pianoroll.ts +0 -0
  79. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/src/progress.ts +0 -0
  80. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/src/sse.ts +0 -0
  81. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/src/style.css +0 -0
  82. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/src/vite-env.d.ts +0 -0
  83. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/tsconfig.json +0 -0
  84. {muscriptor-0.1.0 → muscriptor-0.2.0}/web/vite.config.ts +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: muscriptor
3
- Version: 0.1.0
3
+ Version: 0.2.0
4
4
  Summary: Audio-to-MIDI transcription using a transformer language model
5
5
  Project-URL: Homepage, https://github.com/muscriptor/muscriptor
6
6
  Project-URL: Repository, https://github.com/muscriptor/muscriptor
@@ -27,7 +27,7 @@ Requires-Dist: numpy>=1.24
27
27
  Requires-Dist: python-multipart>=0.0.29
28
28
  Requires-Dist: safetensors>=0.4
29
29
  Requires-Dist: soundfile>=0.14.0
30
- Requires-Dist: torch<2.7,>=2.0
30
+ Requires-Dist: torch>=2.0
31
31
  Requires-Dist: typer>=0.10
32
32
  Requires-Dist: uvicorn[standard]>=0.48.0
33
33
  Description-Content-Type: text/markdown
@@ -41,7 +41,7 @@ Description-Content-Type: text/markdown
41
41
  MuScriptor is a multi-instrument music transcription model developed by [Kyutai](https://kyutai.org) and [Mirelo](https://www.mirelo.ai).
42
42
  MuScriptor is the first music transcription model that has been trained on a large scale dataset of 170k songs from classical music to heavy metal.
43
43
 
44
- [Online Demo](https://muscriptor.kyutai.org) | [Paper] (coming soon) | [HuggingFace](https://huggingface.co/MuScriptor)
44
+ [Online Demo](https://muscriptor.kyutai.org) | [Paper](https://arxiv.org/abs/2607.08168v1) | [HuggingFace](https://huggingface.co/MuScriptor)
45
45
 
46
46
  <!-- TODO: record the demo GIF (web UI piano roll), save it as assets/demo.gif,
47
47
  then uncomment:
@@ -322,15 +322,14 @@ distributed under its own (MIT) license.
322
322
 
323
323
  ## Citation
324
324
 
325
- <!-- TODO: fill in the BibTeX entry when the paper is out:
326
325
  ```bibtex
327
- @techreport{muscriptor2026,
328
- title = {MuScriptor: ...},
329
- author = {...},
330
- year = {2026},
331
- url = {...},
326
+ @misc{rouard2026muscriptoropenmodelmultiinstrument,
327
+ title={MuScriptor: An Open Model for Multi-Instrument Music Transcription},
328
+ author={Simon Rouard and Michael Krause and Axel Roebel and Carl-Johann Simon-Gabriel and Alexandre Défossez},
329
+ year={2026},
330
+ eprint={2607.08168},
331
+ archivePrefix={arXiv},
332
+ primaryClass={cs.SD},
333
+ url={https://arxiv.org/abs/2607.08168},
332
334
  }
333
335
  ```
334
- -->
335
-
336
- The paper is coming soon — a citation entry will be added here with it.
@@ -7,7 +7,7 @@
7
7
  MuScriptor is a multi-instrument music transcription model developed by [Kyutai](https://kyutai.org) and [Mirelo](https://www.mirelo.ai).
8
8
  MuScriptor is the first music transcription model that has been trained on a large scale dataset of 170k songs from classical music to heavy metal.
9
9
 
10
- [Online Demo](https://muscriptor.kyutai.org) | [Paper] (coming soon) | [HuggingFace](https://huggingface.co/MuScriptor)
10
+ [Online Demo](https://muscriptor.kyutai.org) | [Paper](https://arxiv.org/abs/2607.08168v1) | [HuggingFace](https://huggingface.co/MuScriptor)
11
11
 
12
12
  <!-- TODO: record the demo GIF (web UI piano roll), save it as assets/demo.gif,
13
13
  then uncomment:
@@ -288,15 +288,14 @@ distributed under its own (MIT) license.
288
288
 
289
289
  ## Citation
290
290
 
291
- <!-- TODO: fill in the BibTeX entry when the paper is out:
292
291
  ```bibtex
293
- @techreport{muscriptor2026,
294
- title = {MuScriptor: ...},
295
- author = {...},
296
- year = {2026},
297
- url = {...},
292
+ @misc{rouard2026muscriptoropenmodelmultiinstrument,
293
+ title={MuScriptor: An Open Model for Multi-Instrument Music Transcription},
294
+ author={Simon Rouard and Michael Krause and Axel Roebel and Carl-Johann Simon-Gabriel and Alexandre Défossez},
295
+ year={2026},
296
+ eprint={2607.08168},
297
+ archivePrefix={arXiv},
298
+ primaryClass={cs.SD},
299
+ url={https://arxiv.org/abs/2607.08168},
298
300
  }
299
301
  ```
300
- -->
301
-
302
- The paper is coming soon — a citation entry will be added here with it.
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "muscriptor"
7
- version = "0.1.0"
7
+ version = "0.2.0"
8
8
  description = "Audio-to-MIDI transcription using a transformer language model"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.10"
@@ -23,7 +23,7 @@ classifiers = [
23
23
  "Topic :: Multimedia :: Sound/Audio :: Analysis",
24
24
  ]
25
25
  dependencies = [
26
- "torch>=2.0,<2.7",
26
+ "torch>=2.0",
27
27
  "numpy>=1.24",
28
28
  "einops>=0.4",
29
29
  "mido>=1.3",
@@ -531,7 +531,7 @@ wheels = [
531
531
 
532
532
  [[package]]
533
533
  name = "muscriptor"
534
- version = "0.1.0"
534
+ version = "0.2.0"
535
535
  source = { editable = "." }
536
536
  dependencies = [
537
537
  { name = "einops" },
@@ -566,7 +566,7 @@ requires-dist = [
566
566
  { name = "python-multipart", specifier = ">=0.0.29" },
567
567
  { name = "safetensors", specifier = ">=0.4" },
568
568
  { name = "soundfile", specifier = ">=0.14.0" },
569
- { name = "torch", specifier = ">=2.0,<2.7" },
569
+ { name = "torch", specifier = ">=2.0" },
570
570
  { name = "typer", specifier = ">=0.10" },
571
571
  { name = "uvicorn", extras = ["standard"], specifier = ">=0.48.0" },
572
572
  ]
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes