A simple, rational music player for android
Find a file
Alexander Capehart 5f9169fb78
music: add non-standard artist fields
Add non-standard ARTISTS/ALBUMARTIST fields to reasonable places in the
ID3v2 and Vorbis parsers.

Turns out these are stupidly common when multi-artist information is
used in order to maximize player compatibility. More or less, TPE1 and
ARTIST will be filled in with delimited values, while ARTISTS will be
filled in with native multi-value information.

This is stupid and insane, but I want to prioritize a good out of box
experience without much user fiddling, so I may as well implement
these.

Currently, I'm only adding the non-standard fields that I know exist.
This doesn't include hypothetical but unencountered fields like
TXXX:ALBUMARTISTS.
2023-01-14 20:52:43 -07:00
.github music: add texttags tests 2023-01-05 14:24:30 -07:00
app music: add non-standard artist fields 2023-01-14 20:52:43 -07:00
fastlane/metadata/android Translations update from Hosted Weblate (#308) 2023-01-05 09:33:46 -07:00
gradle/wrapper all: reformat code 2022-09-08 21:04:51 -06:00
.gitignore queue: reimplement with bottom sheet 2022-07-29 14:40:58 -06:00
build.gradle build: upgrade deps 2022-12-16 08:48:32 -07:00
CHANGELOG.md list: add update instructions framework 2023-01-14 19:55:09 -07:00
gradle.properties all: cleanup 2022-03-13 16:42:03 -06:00
gradlew all: reformat code 2022-09-08 21:04:51 -06:00
gradlew.bat all: reformat code 2022-09-08 21:04:51 -06:00
LICENSE Initial commit 2020-08-17 15:35:12 +00:00
prebuild.py list: add editable list listener 2022-12-31 13:47:13 -07:00
README.md release: bump to 3.0.1 2023-01-02 19:05:57 -07:00
settings.gradle deps: use aar 2022-01-27 15:05:45 -07:00

Auxio

A simple, rational music player for android.

Latest Version Releases Minimum SDK Version

Changelog | Wiki

Translation status

About

Auxio is a local music player with a fast, reliable UI/UX without the many useless features present in other music players. Built off of Exoplayer, Auxio has superior library support and listening quality compared to other apps that use outdated android functionality. In short, It plays music.

I primarily built Auxio for myself, but you can use it too, I guess.

The default branch is the development version of the repository. For a stable version, see the master branch.

Screenshots

Features

  • ExoPlayer based playback
  • Snappy UI derived from the latest Material Design guidelines
  • Opinionated UX that prioritizes ease of use over edge cases
  • Customizable behavior
  • Support for disc numbers, multiple artists, release types, precise/original dates, sort tags, and more
  • Advanced artist system that unifies artists and album artists
  • SD Card-aware folder management
  • Reliable playback state persistence
  • Full ReplayGain support (On MP3, FLAC, OGG, OPUS, and MP4 files)
  • External equalizer support (ex. Wavelet)
  • Edge-to-edge
  • Embedded covers support
  • Search functionality
  • Headset autoplay
  • Stylish widgets that automatically adapt to their size
  • Completely private and offline
  • No rounded album covers (Unless you want them. Then you can.)

Permissions

  • Storage (READ_MEDIA_AUDIO, READ_EXTERNAL_STORAGE) to read and play your media files
  • Services (FOREGROUND_SERVICE, WAKE_LOCK) to keep the music playing even if the app itself is in background

Building

Auxio relies on a custom version of ExoPlayer that enables some extra features. So, the build process is as follows:

  1. cd into the project directory.
  2. Run python3 prebuild.py, which installs ExoPlayer and it's extensions.
    • The pre-build process only works with *nix systems. On windows, this process must be done manually.
  3. Build the project normally in Android Studio.

Contributing

Auxio accepts most contributions as long as they follow the Contribution Guidelines.

However, feature additions and major UI changes are less likely to be accepted. See Why Are These Features Missing? for more information.

License

GNU GPLv3 Image

Auxio is Free Software: You can use, study share and improve it at your will. Specifically you can redistribute and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

More information can be found here.