Use a constant for encoding
Replace string.getBytes("UTF-8") with string.getBytes(CONSTANT).
|10 hours ago|
|.github||4 months ago|
|airsonic-main||10 hours ago|
|airsonic-sonos-api||2 months ago|
|contrib||2 weeks ago|
|install/docker||2 months ago|
|integration-test||2 days ago|
|repo||3 months ago|
|subsonic-rest-api||2 months ago|
|.gitattributes||4 months ago|
|.gitignore||2 years ago|
|.gitlab-ci.yml||4 months ago|
|.travis.yml||1 month ago|
|.weblate||2 months ago|
|CHANGELOG.md||2 months ago|
|CONTRIBUTING.md||5 months ago|
|DOCUMENTATION.md||2 years ago|
|LICENSE.txt||3 years ago|
|README.md||3 months ago|
|checkstyle.xml||1 week ago|
|pom.xml||3 weeks ago|
Airsonic is a free, web-based media streamer, providing ubiquitous access to your music. Use it to share your music with friends, or to listen to your own music while at work. You can stream to multiple players simultaneously, for instance to one player in your kitchen and another in your living room.
Airsonic is designed to handle very large music collections (hundreds of gigabytes). Although optimized for MP3 streaming, it works for any audio or video format that can stream over HTTP, for instance AAC and OGG. By using transcoder plug-ins, Airsonic supports on-the-fly conversion and streaming of virtually any audio format, including WMA, FLAC, APE, Musepack, WavPack and Shorten.
If you have constrained bandwidth, you may set an upper limit for the bitrate of the music streams. Airsonic will then automatically resample the music to a suitable bitrate.
In addition to being a streaming media server, Airsonic works very well as a local jukebox. The intuitive web interface, as well as search and index facilities, are optimized for efficient browsing through large media libraries. Airsonic also comes with an integrated Podcast receiver, with many of the same features as you find in iTunes.
Based on Java technology, Airsonic runs on most platforms, including Windows, Mac, Linux and Unix variants.
Libresonic was created and maintained by Eugene E. Kashpureff Jr. It originated as an unofficial(“Kang”) of Subsonic which did not contain the Licensing code checks present in the official builds. With the announcement of Subsonic’s closed-source future, a decision was made to make a full fork and rebrand to Libresonic.
Around July 2017, it was discovered that Eugene had different intentions/goals for the project than some contributors had. Although the developers were hesitant to create a fork as it would fracture/confuse the community even further, it was deemed necessary in order to preserve a community-focused fork. To reiterate this more clearly:
Airsonic’s goal is to provide a full-featured, stable, self-hosted media server based on the Subsonic codebase that is free, open source, and community driven.
Pull Requests are always welcome. Keep in mind that we strive to balance stability with new features. As such, all Pull Requests are reviewed before being merged to ensure we continue to meet our goals.
Airsonic is free software and licensed under the GNU General Public License version 3. The code in this repository (and associated binaries) are free of any “license key” or other restrictions. If you wish to thank the maintainer of this repository, please consider a donation to the Electronic Frontier Foundation.
The Subsonic source code was released under the GPLv3 through version 6.0-beta1. Beginning with 6.0-beta2, source is no longer provided. Binaries of Subsonic are only available under a commercial license. There is a Subsonic Premium service which adds functionality not available in Airsonic. Subsonic also offers RPM, Deb, Exe, and other pre-built packages that Airsonic currently does not.
Airsonic can be downloaded from GitHub.
Please use the Airsonic documentation for instructions on running Airsonic.
We have several places outside of github for community discussion, questions, etc:
Note that the Matrix room and IRC channel are bridged together.