{"id":16866959,"url":"https://github.com/webern/midi_file","last_synced_at":"2025-03-17T05:32:45.928Z","repository":{"id":54146250,"uuid":"324081793","full_name":"webern/midi_file","owner":"webern","description":"MIDI File Basics in Rust","archived":false,"fork":false,"pushed_at":"2024-09-15T09:32:59.000Z","size":127,"stargazers_count":14,"open_issues_count":7,"forks_count":5,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-03-12T08:37:13.708Z","etag":null,"topics":["midi","midi-files","rust"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/webern.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE-APACHE","code_of_conduct":".github/CODE_OF_CONDUCT.md","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":"2020-12-24T06:16:21.000Z","updated_at":"2024-12-29T15:43:16.000Z","dependencies_parsed_at":"2023-01-28T15:30:58.516Z","dependency_job_id":"53e56ba4-a7b5-4d2e-be44-eeb210b75f85","html_url":"https://github.com/webern/midi_file","commit_stats":{"total_commits":22,"total_committers":1,"mean_commits":22.0,"dds":0.0,"last_synced_commit":"17d7965926fa61fb1843e7e50926e3e1dee0e125"},"previous_names":[],"tags_count":6,"template":false,"template_full_name":"webern/rust-template","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/webern%2Fmidi_file","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/webern%2Fmidi_file/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/webern%2Fmidi_file/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/webern%2Fmidi_file/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/webern","download_url":"https://codeload.github.com/webern/midi_file/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243846978,"owners_count":20357297,"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":["midi","midi-files","rust"],"created_at":"2024-10-13T14:52:15.849Z","updated_at":"2025-03-17T05:32:44.968Z","avatar_url":"https://github.com/webern.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Rust MIDI File Library\n\nThe purpose of this library is primarily to be able to author and write MIDI files in Rust.\nThe library also parses MIDI files and thus can \"round trip\" files.\n\n### Unimplemented Features\n\n- `sysex` messages\n- sequence number messages\n- sequencer specific messages\n\n### Interface\n\nAll the bytes, messages and such are represented with pub structs and enums, but the structs have private members. \nTo create a basic file, as I have done in an [example], I have added functions at the `Track` level.\nWith these functions you can build up a file without as much knowledge of the underlying data structure.\n\nYou need to understand MIDI in order to create a meaningful MIDI file, but any file you create with the library should\nbe technically valid per the spec.\nYou do not need to understand the meaning of any particular byte's numeric value. \n\n[example]: https://github.com/webern/midi/blob/main/examples/main.rs\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwebern%2Fmidi_file","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwebern%2Fmidi_file","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwebern%2Fmidi_file/lists"}