{"id":29025999,"url":"https://github.com/mtg/freesound-juce","last_synced_at":"2025-06-26T05:08:04.870Z","repository":{"id":101065734,"uuid":"190720159","full_name":"MTG/freesound-juce","owner":"MTG","description":"A JUCE client for accessing the Freesound API","archived":false,"fork":false,"pushed_at":"2021-11-25T15:36:23.000Z","size":356,"stargazers_count":30,"open_issues_count":0,"forks_count":2,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-05-08T03:35:45.071Z","etag":null,"topics":["audio","freesound","juce","juce-client"],"latest_commit_sha":null,"homepage":"http://mtg.github.io/freesound-juce/","language":"C++","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/MTG.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}},"created_at":"2019-06-07T09:39:46.000Z","updated_at":"2025-02-16T21:18:55.000Z","dependencies_parsed_at":null,"dependency_job_id":"57de0709-c7c0-492f-8231-fb26bf95a417","html_url":"https://github.com/MTG/freesound-juce","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/MTG/freesound-juce","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MTG%2Ffreesound-juce","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MTG%2Ffreesound-juce/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MTG%2Ffreesound-juce/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MTG%2Ffreesound-juce/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MTG","download_url":"https://codeload.github.com/MTG/freesound-juce/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MTG%2Ffreesound-juce/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262003994,"owners_count":23243358,"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","freesound","juce","juce-client"],"created_at":"2025-06-26T05:08:03.961Z","updated_at":"2025-06-26T05:08:04.853Z","avatar_url":"https://github.com/MTG.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# freesound-juce\n\nA JUCE client for accessing the [Freesound](https://freesound.org) API. From the Freesound API docs:\n\n\u003e With the Freesound API you can browse, search, and retrieve information about Freesound users, packs, and the sounds themselves of course. You can find similar sounds to a given target (based on content analysis) and retrieve automatically extracted features from audio files, as well as perform advanced queries combining content analysis features and other metadata (tags, etc…). With the Freesound API, you can also upload, comment, rate and bookmark sounds!\n\nThe freesound-juce client automatically maps function arguments to HTTP parameters of the Freesound API. JSON results are parsed and converted to C++ objects. The main object classes (`SoundList`, `Sound`,\n`User`, `Pack`) implement utility methods to further interact with the API.\n\nThe freesound-juce client includes a simple example command line application built with JUCE v5.4.4 which shows how to use it. Client's [documentation can be found here](https://mtg.github.io/freesound-juce/index.html). However we recommend you to check the [official Freesound API documentation]((https://freesound.org/docs/api/)) to get more information about the available API endpoints and features.\n\n\n## Usage\n\nTo use freesound-juce just copy `FreesoundAPI.h` and `FreesoundAPI.cpp` to your project source folder and `#include \"FreesoundAPI.h\"`.\n\nTo access the API you'll need to create a Freesound user account and apply for an API key at [https://freesound.org/api/apply/](https://freesound.org/api/apply/). Then, an `FreesoundClient`\nneeds to be instantiated with the api key as a parameter. Note that this client can do both token-based\nauthentication or OAuth2 and there are specific functions for them.\n\n\n## Quick example\n\n```cpp\nFreesoundClient client(secret);\nSoundList list = client.textSearch(\"bass\");\nArray\u003cFSSound\u003e arrayOfSearch = list.toArrayOfSounds();\nfor (int i = 0; i \u003c arrayOfSearch.size(); i++) {\n  name = arrayOfSearch[i].name;\n  username = arrayOfSearch[i].user;\n  std::cout \u003c\u003c \"Sound Name: \" \u003c\u003c name \u003c\u003c \" Username: \" \u003c\u003c username \u003c\u003c std::endl;\n}\n\n```\n\n\n## Example applications\n\nCheck out this cool example apps:\n\n * [Demo app](https://github.com/aframires/freesound-juce/blob/master/Source/Main.cpp): simple command-line utility that makes some queries to Freesound to demonstrate how the client works. Includes OAuth2 authentication example as well.\n * [FreesoundUploader](https://github.com/aframires/FreesoundUploader): let's you upload sounds to Freesound directly from your DAW!\n * [FreesoundSimpleSampler](https://github.com/ffont/FreesoundSimpleSampler): let's you search in Freesound and automatically build a simple sampler based on the results.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmtg%2Ffreesound-juce","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmtg%2Ffreesound-juce","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmtg%2Ffreesound-juce/lists"}