{"id":20823036,"url":"https://github.com/madskjeldgaard/birdhouse","last_synced_at":"2025-05-07T16:45:03.174Z","repository":{"id":227494789,"uuid":"759181465","full_name":"madskjeldgaard/Birdhouse","owner":"madskjeldgaard","description":"An OSC to Midi Bridge. Cross-platform. VST, CLAP, Standalone.","archived":false,"fork":false,"pushed_at":"2024-08-20T14:51:26.000Z","size":3411,"stargazers_count":37,"open_issues_count":18,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-31T12:01:43.056Z","etag":null,"topics":["clap-plugin","juce","juce-framework","midi","osc","vst3"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/madskjeldgaard.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},"funding":{"custom":["https://ko-fi.com/madskjeldgaard"]}},"created_at":"2024-02-17T21:43:57.000Z","updated_at":"2025-01-27T20:41:19.000Z","dependencies_parsed_at":"2024-03-13T16:39:41.720Z","dependency_job_id":"12f3b9e8-5337-4194-9507-d1119e46f6a8","html_url":"https://github.com/madskjeldgaard/Birdhouse","commit_stats":null,"previous_names":["madskjeldgaard/birdhouse"],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/madskjeldgaard%2FBirdhouse","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/madskjeldgaard%2FBirdhouse/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/madskjeldgaard%2FBirdhouse/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/madskjeldgaard%2FBirdhouse/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/madskjeldgaard","download_url":"https://codeload.github.com/madskjeldgaard/Birdhouse/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252916854,"owners_count":21824851,"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":["clap-plugin","juce","juce-framework","midi","osc","vst3"],"created_at":"2024-11-17T22:17:07.939Z","updated_at":"2025-05-07T16:45:03.156Z","avatar_url":"https://github.com/madskjeldgaard.png","language":"C++","funding_links":["https://ko-fi.com/madskjeldgaard","https://ko-fi.com/X8X6RXV10"],"categories":[],"sub_categories":[],"readme":"[![Build](https://github.com/madskjeldgaard/Birdhouse/actions/workflows/cmake_build.yml/badge.svg)](https://github.com/madskjeldgaard/Birdhouse/actions/workflows/cmake_build.yml)\n\n[![ko-fi](https://ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/X8X6RXV10)\n\n# BirdHouse\n## An OSC to MIDI bridge\n\n![Birdhouse in action](manual/bitwigcc.png) \n\nWith BirdHouse you can receive OSC messages with a DAW or plugin host and have them converted to MIDI.\n\nThe Birdhouse OSC to MIDI plugin is a simple plugin that listens for OSC messages, processes their data and sends outputs it as MIDI to allow using it in a DAW or other plugin host environment. Each instance of Birdhouse is able to process a stream of OSC messages to a MIDI event type, with a visualization of the stream and the ability to mute/unmute the output data. \n\nThe need for this plugin arose from having to make different projects that rely on OSC communication to generate notes or affect sound parameters. Often this was solved with middlewares written in one of the common computer music languages, with varying levels of success and then passed on to different Digital Audio Workstations with even more varying levels of success. The thing is, different software process OSC messages with different priority levels. This can be annoying in interactive art since we sometimes want to blast software with values from sensors, other software or from wherever, and be able to expect pretty consistent results. Birdhouse attempts to solve this.\n\n\n[![Birdhouse in action](http://img.youtube.com/vi/Of1s9zzU6Jo/0.jpg)](http://www.youtube.com/watch?v=Of1s9zzU6Jo)\n\n\n## Features\n\n- Convert OSC to MIDI inside any DAW or plugin host\n- Realtime-processing of the incoming OSC messages\n- Audio-rate MIDI \n- Scale from any input value range to MIDI ranges automatically\n- Process 8 streams of OSC messages per instance\n- Output common MIDI message types: Note on/off, MIDI CC, Pitch bend (more coming)\n\n## Use cases\n\n- Controlling your DAW using a phone or tablet\n- Sending OSC from an Arduino, ESP or Raspberry Pi Pico to a DAW to trigger notes or control parameter changes in plugins\n- Using OSC to control a DAW using computer music software like SuperCollider, Max/MSP or PureData\n\n## Supported hosts\n\nTested and working in:\n- ✅ Reaper\n- ✅ BitWig\n- ✅ Ardour (see [this for more info on setup](https://github.com/madskjeldgaard/Birdhouse/issues/45))\n\nUntested: \n- ✖️ Ableton Live\n- ✖️ Logic Pro\n- ✖️ Cubase\n- ✖️ Pro Tools\n- ✖️ FL Studio\n- ✖️ Studio One\n- ✖️ Reason\n\nIf you test the plugin in one of the untested or unmentioned hosts, please open an issue and let us know how it worked.\n\n# Usage\n\n[![Birdhouse in action](http://img.youtube.com/vi/Of1s9zzU6Jo/0.jpg)](http://www.youtube.com/watch?v=Of1s9zzU6Jo)\n\nSee the [manual](manual/birdhouse-manual.pdf) or check out this [tutorial on YouTube](http://www.youtube.com/watch?v=Of1s9zzU6Jo).\n\n# Development\n\nThis project was generated using [Cookiejuce](github.com/madskjeldgaard/Cookiejuce).\n\n## Supporting the project\n\nIf you find this project useful and want to support it, please consider supporting it by [buying me a coffee](https://ko-fi.com/madskjeldgaard).\n\n## Build and install\n\n### Prerequisites\n\n- CMake\n- [git lfs](https://docs.github.com/en/repositories/working-with-files/managing-large-files/installing-git-large-file-storage)\n\n### Building\n\nDownload source code (make sure eto include submodules):\n\n```bash\ngit clone --recurse-submodules  https://github.com/madskjeldgaard/Birdhouse.git\ncd Birdhouse\n```\n\nConfigure:\n```bash\ncmake -S . -B build\n```\n\nBuild.\n\nThis will automatically install the plugins on your system. \n\nIf you want the standalone, you should copy it manually.\n\n```bash\ncmake --build build\n```\n\nThe plugins are now copied to your system.\n\nRun standalone (on MacOS):\n```bash\n./build/BirdHouse_artefacts/Standalone/BirdHouse.app/Contents/MacOS/BirdHouse\n```\n\n## Building the manual\n\nThe manual is built using pandoc. Run it from the root of the repo:\n\n```bash\npandoc -i manual/birdhouse-manual.md -o manual/birdhouse-manual.pdf\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmadskjeldgaard%2Fbirdhouse","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmadskjeldgaard%2Fbirdhouse","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmadskjeldgaard%2Fbirdhouse/lists"}