{"id":13531873,"url":"https://github.com/kcat/openal-soft","last_synced_at":"2026-04-02T00:19:43.939Z","repository":{"id":20009778,"uuid":"23277337","full_name":"kcat/openal-soft","owner":"kcat","description":"OpenAL Soft is a software implementation of the OpenAL 3D audio API.","archived":false,"fork":false,"pushed_at":"2026-03-19T09:23:44.000Z","size":27722,"stargazers_count":2635,"open_issues_count":265,"forks_count":611,"subscribers_count":75,"default_branch":"master","last_synced_at":"2026-03-19T10:56:36.268Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"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/kcat.png","metadata":{"files":{"readme":"README.md","changelog":"ChangeLog","contributing":null,"funding":null,"license":"COPYING","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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2014-08-24T09:13:17.000Z","updated_at":"2026-03-19T09:23:48.000Z","dependencies_parsed_at":"2023-10-15T17:25:24.043Z","dependency_job_id":"738c6577-a921-448c-ad5d-3acf1291e6a3","html_url":"https://github.com/kcat/openal-soft","commit_stats":{"total_commits":9177,"total_committers":85,"mean_commits":"107.96470588235294","dds":0.02321019941157243,"last_synced_commit":"fddfbb6e74260a5f823749920ca1acc0e1bd4397"},"previous_names":[],"tags_count":46,"template":false,"template_full_name":null,"purl":"pkg:github/kcat/openal-soft","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kcat%2Fopenal-soft","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kcat%2Fopenal-soft/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kcat%2Fopenal-soft/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kcat%2Fopenal-soft/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kcat","download_url":"https://codeload.github.com/kcat/openal-soft/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kcat%2Fopenal-soft/sbom","scorecard":{"id":537438,"data":{"date":"2025-08-11","repo":{"name":"github.com/kcat/openal-soft","commit":"e2e50db5c91617e2a77f19c35b4d546e910f5831"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":4.3,"checks":[{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Maintained","score":10,"reason":"30 commit(s) and 24 issue activity found in the last 90 days -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"SAST","score":0,"reason":"no SAST tool detected","details":["Warn: no pull requests merged into dev branch"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"License","score":9,"reason":"license file detected","details":["Info: project has a license file: COPYING:0","Warn: project license file does not contain an FSF or OSI license."],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Warn: no topLevel permission defined: .github/workflows/utils.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":0,"reason":"Project has not signed or included provenance with any releases.","details":["Warn: release artifact utils not signed: https://api.github.com/repos/kcat/openal-soft/releases/240039382","Warn: release artifact latest not signed: https://api.github.com/repos/kcat/openal-soft/releases/240039408","Warn: release artifact 1.24.3 not signed: https://api.github.com/repos/kcat/openal-soft/releases/209183656","Warn: release artifact 1.24.2 not signed: https://api.github.com/repos/kcat/openal-soft/releases/194229810","Warn: release artifact 1.24.1 not signed: https://api.github.com/repos/kcat/openal-soft/releases/187948871","Warn: release artifact utils does not have provenance: https://api.github.com/repos/kcat/openal-soft/releases/240039382","Warn: release artifact latest does not have provenance: https://api.github.com/repos/kcat/openal-soft/releases/240039408","Warn: release artifact 1.24.3 does not have provenance: https://api.github.com/repos/kcat/openal-soft/releases/209183656","Warn: release artifact 1.24.2 does not have provenance: https://api.github.com/repos/kcat/openal-soft/releases/194229810","Warn: release artifact 1.24.1 does not have provenance: https://api.github.com/repos/kcat/openal-soft/releases/187948871"],"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:200: update your workflow using https://app.stepsecurity.io/secureworkflow/kcat/openal-soft/ci.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:236: update your workflow using https://app.stepsecurity.io/secureworkflow/kcat/openal-soft/ci.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:128: update your workflow using https://app.stepsecurity.io/secureworkflow/kcat/openal-soft/ci.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:181: update your workflow using https://app.stepsecurity.io/secureworkflow/kcat/openal-soft/ci.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/utils.yml:35: update your workflow using https://app.stepsecurity.io/secureworkflow/kcat/openal-soft/utils.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/utils.yml:67: update your workflow using https://app.stepsecurity.io/secureworkflow/kcat/openal-soft/utils.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/utils.yml:73: update your workflow using https://app.stepsecurity.io/secureworkflow/kcat/openal-soft/utils.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/utils.yml:79: update your workflow using https://app.stepsecurity.io/secureworkflow/kcat/openal-soft/utils.yml/master?enable=pin","Info:   0 out of   4 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   4 third-party GitHubAction dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}}]},"last_synced_at":"2025-08-20T07:20:53.633Z","repository_id":20009778,"created_at":"2025-08-20T07:20:53.633Z","updated_at":"2025-08-20T07:20:53.633Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31293351,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-01T21:15:39.731Z","status":"ssl_error","status_checked_at":"2026-04-01T21:15:34.046Z","response_time":53,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":[],"created_at":"2024-08-01T07:01:06.438Z","updated_at":"2026-04-02T00:19:43.913Z","avatar_url":"https://github.com/kcat.png","language":"C++","readme":"OpenAL Soft\n===========\n\n`master` branch CI status : [![GitHub Actions Status](https://github.com/kcat/openal-soft/actions/workflows/ci.yml/badge.svg)](https://github.com/kcat/openal-soft/actions) [![Windows Build Status](https://ci.appveyor.com/api/projects/status/github/kcat/openal-soft?branch=master\u0026svg=true)](https://ci.appveyor.com/api/projects/status/github/kcat/openal-soft?branch=master\u0026svg=true)\n\nOpenAL Soft is an LGPL-licensed, cross-platform, software implementation of the OpenAL 3D audio API. It's forked from the open-sourced Windows version available originally from openal.org's SVN repository (now defunct).\nOpenAL provides capabilities for playing audio in a virtual 3D environment. Distance attenuation, doppler shift, and directional sound emitters are among the features handled by the API. More advanced effects, including air absorption, occlusion, and environmental reverb, are available through the EFX extension. It also facilitates streaming audio, multi-channel buffers, and audio capture.\n\nMore information is available on the [official website](http://openal-soft.org/).\n\nSource Install\n-------------\nTo install OpenAL Soft, use your favorite shell to go into the build/\ndirectory, and run:\n\n```bash\ncmake ..\n```\n\nAlternatively, you can use any available CMake front-end, like cmake-gui,\nccmake, or your preferred IDE's CMake project parser.\n\nAssuming configuration went well, you can then build it. The command\n`cmake --build .` will instruct CMake to build the project with the toolchain\nchosen during configuration (often GNU Make or NMake, although others are\npossible).\n\nPlease Note: Double check that the appropriate backends were detected. Often,\ncomplaints of no sound, crashing, and missing devices can be solved by making\nsure the correct backends are being used. CMake's output will identify which\nbackends were enabled.\n\nFor most systems, you will likely want to make sure PipeWire, PulseAudio, and\nALSA were detected (if your target system uses them). For Windows, make sure\nWASAPI was detected.\n\n\nBuilding openal-soft - Using vcpkg\n----------------------------------\n\nYou can download and install openal-soft using the [vcpkg](https://github.com/Microsoft/vcpkg) dependency manager:\n\n    git clone https://github.com/Microsoft/vcpkg.git\n    cd vcpkg\n    ./bootstrap-vcpkg.sh\n    ./vcpkg integrate install\n    ./vcpkg install openal-soft\n\nThe openal-soft port in vcpkg is kept up to date by Microsoft team members and community contributors. If the version is out of date, please [create an issue or pull request](https://github.com/Microsoft/vcpkg) on the vcpkg repository.\n\nUtilities\n---------\nThe source package comes with an informational utility, openal-info, and is\nbuilt by default. It prints out information provided by the ALC and AL sub-\nsystems, including discovered devices, version information, and extensions.\n\n\nConfiguration\n-------------\n\nOpenAL Soft can be configured on a per-user and per-system basis. This allows\nusers and sysadmins to control information provided to applications, as well\nas application-agnostic behavior of the library. See alsoftrc.sample for\navailable settings.\n\n\nLanguage Bindings\n-----------------\n\nAs a C API, OpenAL Soft can be used directly by any language that can use\nfunctions with C linkage. For languages that can't directly use C-style\nheaders, bindings may be developed to allow code written in that language to\ncall into the library. Some bindings for some languages are listed here.\n\nC# Bindings:\n* [OpenTK](https://opentk.net/) includes low-level C# bindings for the OpenAL\nAPI, including some extensions. It also includes utility libraries for math and\nlinear algebra, which can be useful for 3D calculations.\n\nJava Bindings:\n* [LWJGL](https://github.com/LWJGL/lwjgl3), the Lightweight Java Game Library,\nincludes Java bindings for the OpenAL API, usable with OpenAL Soft.\n* [JOAL](https://jogamp.org/joal/www/), part of the JogAmp project, includes\nJava bindings for the OpenAL API, usable with OpenAL Soft. It also includes a\nhigher level Sound3D Toolkit API and utility functions to make easier use of\nOpenAL features and capabilities.\n\nKotlin Bindings:\n* [Multiplatform OpenAL](https://git.karmakrafts.dev/kk/multiplatform-openal), developed for the Kleaver project,\nincludes Kotlin/Native bindings for the OpenAL API, based on OpenAL Soft with support\nfor Windows, Linux, macOS, iOS and Android.\n\nPython Bindings:\n* [PyOpenAL](https://pypi.org/project/PyOpenAL/). Also includes methods to play\nwave files and, with PyOgg, also Vorbis, Opus, and FLAC.\n\nFreePascal/Lazarus Bindings:\n* [ALSound](https://github.com/Lulu04/ALSound). Also includes a higher level\nAPI and libsndfile support to simplify loading and playing sounds.\n\nOther bindings for these and other languages also exist. This list will grow as\nmore bindings are found.\n\n\nAcknowledgements\n----------------\n\nSpecial thanks go to:\n\n - Creative Labs for the original source code this is based off of.\n - Christopher Fitzgerald for the current reverb effect implementation, and\nhelping with the low-pass and HRTF filters.\n - Christian Borss for the 3D panning code previous versions used as a base.\n - Ben Davis for the idea behind a previous version of the click-removal code.\n - Richard Furse for helping with my understanding of Ambisonics that is used by\nthe various parts of the library.\n","funding_links":[],"categories":["Multimedia","Libraries"],"sub_categories":["C++"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkcat%2Fopenal-soft","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkcat%2Fopenal-soft","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkcat%2Fopenal-soft/lists"}