{"id":13603636,"url":"https://github.com/Woyten/tune","last_synced_at":"2025-04-11T22:31:49.322Z","repository":{"id":39706816,"uuid":"164336842","full_name":"Woyten/tune","owner":"Woyten","description":"Make xenharmonic music and create synthesizer tuning files for microtonal scales.","archived":false,"fork":false,"pushed_at":"2025-04-08T02:11:46.000Z","size":21479,"stargazers_count":138,"open_issues_count":12,"forks_count":6,"subscribers_count":8,"default_branch":"main","last_synced_at":"2025-04-10T05:05:23.316Z","etag":null,"topics":["audio","microtonal","midi","modular","modular-synthesizers","mts","music","musical-scales","piano","rust","scales","sound-effects","synthesizer","wasm","xenharmonic"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Woyten.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-01-06T19:05:25.000Z","updated_at":"2025-03-25T17:48:39.000Z","dependencies_parsed_at":"2023-12-20T16:04:26.785Z","dependency_job_id":"37d4b9ce-7aad-4b85-8392-5ab847e51368","html_url":"https://github.com/Woyten/tune","commit_stats":{"total_commits":707,"total_committers":3,"mean_commits":"235.66666666666666","dds":0.00990099009900991,"last_synced_commit":"68b25db6754c74e9fcf695fab8a72ed5e4940c33"},"previous_names":[],"tags_count":124,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Woyten%2Ftune","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Woyten%2Ftune/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Woyten%2Ftune/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Woyten%2Ftune/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Woyten","download_url":"https://codeload.github.com/Woyten/tune/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248489707,"owners_count":21112622,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["audio","microtonal","midi","modular","modular-synthesizers","mts","music","musical-scales","piano","rust","scales","sound-effects","synthesizer","wasm","xenharmonic"],"created_at":"2024-08-01T19:00:27.829Z","updated_at":"2025-04-11T22:31:47.084Z","avatar_url":"https://github.com/Woyten.png","language":"Rust","funding_links":[],"categories":["Rust","Tools"],"sub_categories":[],"readme":"Explore musical tunings and create synthesizer tuning files for microtonal scales.\n\n# Overview\n\n`tune` is planned to be part of a larger ecosystem for microtonal software in Rust.\n\nCurrent projects relying on `tune` are:\n\n- [tune-cli](https://github.com/Woyten/tune/tree/main/tune-cli): A command line tool with live-retuning capabilities\n- [microwave](https://github.com/Woyten/tune/tree/main/microwave): A microtonal modular waveform synthesizer\n- [fluid-xenth](https://github.com/Woyten/tune/tree/main/fluid-xenth): A microtonal soundfont renderer\n\n## Resources\n\n- [Changelog](https://github.com/Woyten/tune/releases)\n- [CLI Documentation](https://github.com/Woyten/tune/blob/main/tune-cli/README.md)\n- [API Documentation](https://docs.rs/tune/)\n- Demo: [Ephemeral Happiness (17-EDO)](https://youtu.be/FZlZE4hLLhs)\n- Demo: [I'm a Lumatic (17-EDO)](https://youtu.be/zKnJJEaidWI)\n- Demo: [Stay Strong (17-EDO)](https://youtu.be/JutcUVrA8Tg)\n- Demo: [Xênerie (15-EDO)](https://youtu.be/0PczKDrOdUA)\n- Demo: [Don't Take Five (16-EDO)](https://youtu.be/LLgClI8pyNw)\n- Demo: [The Bedoginning (17-EDO)](https://youtu.be/gaYvK9OBHK0)\n\n## Features\n\n### Pitch Conversions\n\n- Convert between linear and logarithmic pitch ratios\n- Determine the frequency for a given note in a custom tuning system\n- Determine the note for a given frequency in a custom tuning system\n- Find fractional approximations for frequency ratios\n\n### Export Scales\n\n- To Scala (scl and kbm) format\n- As Midi Tuning Standard (MTS) Sysex Messages\n  - Single Note Tuning Change (with Bank Select)\n  - Scale/Octave Tuning (1-Byte and 2-Byte)\n\n### Import Scales\n\n- From Scala (scl and kbm) format\n\n### Live Retuning\n\n- Enhance the capabilities of synthesizers with limited tuning support\n  - Tune channels ahead of time for a glitch free tuning experience\n  - Tune channels just in time for full pitch freedom\n- Pick the message type that your synth supports\n  - Single Note Tuning Change (with Bank Select)\n  - Scale/Octave Tuning (1-Byte and 2-Byte)\n  - Channel Fine Tuning\n  - Pitch Bend\n\n### MOS Scales and Isomorphic Keyboards\n\n- Find MOSes for a given generator\n- Find generators for a given MOS\n- Find MOS-based isomorphic keyboard layouts\n  - Supported genchains: Meantone, Mavila, Porcupine, Tetracot, Hanson\n  - Determine step sizes\n  - Generate automatic color schemas\n  - Print generalized note names and accidentals\n\n### Commas and Temperaments\n\n- Find patent vals\n- Find tempered-out commas\n\n### MIDI Messages\n\n- Create basic MIDI messages\n- Create tuning-related RPN messages\n- Parse basic MIDI messages","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FWoyten%2Ftune","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FWoyten%2Ftune","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FWoyten%2Ftune/lists"}