{"id":19530072,"url":"https://github.com/wiserim/orchestra","last_synced_at":"2026-04-18T03:32:18.361Z","repository":{"id":115375028,"uuid":"340365198","full_name":"wiserim/Orchestra","owner":"wiserim","description":"Orchestra is a web based application for simultaneous, collaborative music generation by multiple users.","archived":false,"fork":false,"pushed_at":"2022-06-06T14:33:57.000Z","size":8960,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-11-20T03:25:57.017Z","etag":null,"topics":["audio","rtcmulticonnection","tonejs","vue","webaudio-api","webmidi","webmidijs","webrtc"],"latest_commit_sha":null,"homepage":"","language":"Vue","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/wiserim.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":"2021-02-19T12:38:56.000Z","updated_at":"2023-02-03T17:24:31.000Z","dependencies_parsed_at":"2023-03-13T13:03:31.376Z","dependency_job_id":null,"html_url":"https://github.com/wiserim/Orchestra","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/wiserim/Orchestra","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wiserim%2FOrchestra","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wiserim%2FOrchestra/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wiserim%2FOrchestra/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wiserim%2FOrchestra/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wiserim","download_url":"https://codeload.github.com/wiserim/Orchestra/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wiserim%2FOrchestra/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31955711,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-18T00:39:45.007Z","status":"online","status_checked_at":"2026-04-18T02:00:07.018Z","response_time":103,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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","rtcmulticonnection","tonejs","vue","webaudio-api","webmidi","webmidijs","webrtc"],"created_at":"2024-11-11T01:28:51.817Z","updated_at":"2026-04-18T03:32:18.344Z","avatar_url":"https://github.com/wiserim.png","language":"Vue","readme":"# Orchestra\n\nOrchestra is a web based application for simultaneous, collaborative music generation by multiple users.\nProject was part of thesis: *System for generating, editing and transmitting multi-source audio streams using Web Audio API, Web RTC and Web MIDI*.\n\n### Abstract\n\u003e The object of this thesis is design and implementation of aplication that allows generation, edition and transmission of multi-sourced audio streams with the use of Web Audio API, WebRTC and Web MIDI technologies. Thesis consists of two parts. First one describe with details technical specification, architecture and components of individual technologies. The second part describes design, implementation and tests of demo web application. The application allows to generate, play, modify and record audio streams. Additionally, it enables transmission of generated audio stream to other users via WebRTC.\n\n**Key words**: Web Audio API, WebRTC, Web MIDI, sound synthesis, sound processing, peerto-peer communication\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"/public_files/assets/readme/screenshot-1.png\" alt=\"Screenshot\"\u003e\n\u003c/p\u003e\n\n## Features:\n* audio editing:\n  * note based interface,\n  * support for various audio sources (audio samples, synths, audio inputs, other users audio streams),\n  * various audio effects,\n  * audio recording and export to audio file (WAV, OGG, MP3),\n  * MIDI controls (if supported by browser),\n* room management,\n* group chat,\n* self hosted STUN adn TURN servers.\n\n## Project setup\nI. Install npm packages.\n```\nnpm install\n```\nII. Configure TURN server in *app.js*\n```javascript\nturnServer: {\n  authMech: 'long-term',\n  credentials: {\n    //user: password\n    TurnServerExampleUsername: 'TurnServerExamplePassword'\n  },\n  listeningIps: [\n    '127.0.0.1' //TURN server ip (host ip)\n  ]\n}\n```\nIII. Configure STUN and TURN servers data in *src/store.js*\n```javascript\niceServers: [\n  //STUN server\n  {\n    urls: 'stun:stun-server-url.com'\n  },\n  //TURN server\n  {\n    urls: 'turn:turn-server-url.com',\n    credential: 'TurnServerExamplePassword',\n    username: 'TurnServerExampleUsername'\n  }\n]\n```\n\n### Compiles and hot-reloads for development\n```\nnpm run serve\n```\n\n### Compiles and minifies for production\n```\nnpm run build\n```\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwiserim%2Forchestra","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwiserim%2Forchestra","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwiserim%2Forchestra/lists"}