Top Related Projects
:tangerine: Clementine Music Player
Small, fast and powerful console music player for Unix-like operating systems.
DeaDBeeF Player
Music player and music library manager for Linux, Windows, and macOS
Quick Overview
Audacious is a free and open-source audio player. It is designed to be lightweight and efficient, with a focus on high audio quality and support for a wide range of audio formats. Audacious offers a customizable interface and extensive plugin support, making it a versatile choice for music enthusiasts.
Pros
- Lightweight and efficient, with low system resource usage
- Supports a wide range of audio formats
- Highly customizable interface and extensive plugin system
- Cross-platform compatibility (Linux, Windows, and BSD)
Cons
- Less intuitive interface compared to some modern audio players
- Limited integration with online music services
- Some users report occasional stability issues on certain systems
- Development pace can be slow at times
Getting Started
To get started with Audacious, follow these steps:
- Download Audacious from the official website: https://audacious-media-player.org/download
- Install the application following the instructions for your operating system
- Launch Audacious
- Add music to your library by clicking "File" > "Add Files" or "Add Folder"
- Customize the interface and settings by navigating to "Settings" > "Preferences"
- Explore available plugins in "Settings" > "Plugins"
Audacious is primarily a desktop application and not a code library, so there are no code examples or quick start instructions for developers. However, if you're interested in contributing to the project or building plugins, you can find the source code and development resources on the official GitHub repository: https://github.com/audacious-media-player/audacious
Competitor Comparisons
:tangerine: Clementine Music Player
Pros of Clementine
- More feature-rich, including internet radio, podcast support, and cloud services integration
- Cross-platform compatibility (Windows, macOS, Linux)
- Active development with regular updates and new features
Cons of Clementine
- Heavier resource usage due to more features
- Steeper learning curve for new users
- Larger installation size
Code Comparison
Clementine (C++):
void MainWindow::PlaylistItemDoubleClicked(int index) {
if (index < 0) return;
app_->player()->PlayAt(index, Engine::Manual, true);
}
Audacious (C):
void playlist_play (int playlist, int entry)
{
if (entry < 0)
return;
playlist_set_position (playlist, entry);
drct_play ();
}
Both examples show similar functionality for playing a selected track, but Clementine uses C++ with object-oriented design, while Audacious uses C with a more procedural approach.
Clementine offers a more comprehensive media player experience with additional features, while Audacious focuses on being lightweight and efficient. The choice between them depends on user preferences for features versus simplicity and resource usage.
Small, fast and powerful console music player for Unix-like operating systems.
Pros of cmus
- Lightweight and resource-efficient, ideal for older or low-spec systems
- Highly customizable with extensive keybindings and color schemes
- Faster startup time and lower memory usage
Cons of cmus
- Less user-friendly interface, steeper learning curve for new users
- Limited visualization options compared to Audacious
- Fewer plugins and extensions available
Code Comparison
cmus (C-based):
static int cmus_play(struct track_info *ti)
{
player_set_file(ti->filename);
if (player_status == PLAYER_STATUS_PLAYING)
player_pause();
player_play();
return 0;
}
Audacious (C++-based):
bool PlaybackPlugin::play(const char * filename, VFSFile & file)
{
if (! open_audio(FMT_FLOAT, 44100, 2))
return false;
return true;
}
Both projects use C-based languages, with cmus using pure C and Audacious using C++. cmus focuses on simplicity and efficiency, while Audacious offers more features and a graphical interface. The code snippets demonstrate the different approaches to implementing playback functionality in each project.
DeaDBeeF Player
Pros of DeaDBeeF
- More extensive plugin system, allowing for greater customization
- Better support for high-resolution audio formats
- More active development and frequent updates
Cons of DeaDBeeF
- Less user-friendly interface, steeper learning curve
- Smaller community and fewer resources for troubleshooting
- Limited cross-platform support (primarily Linux-focused)
Code Comparison
Both Audacious and DeaDBeeF are written in C, but their code structures differ slightly. Here's a brief comparison of how they handle playlist management:
Audacious:
void aud_playlist_entry_insert (int playlist, int at, const char * filename, Tuple * tuple, bool play)
{
playlist_entry_insert (playlist, at, filename, tuple, play);
}
DeaDBeeF:
int
plt_add_file (ddb_playlist_t *plt, const char *fname, int *pabort, int (*cb)(DB_playItem_t *it, void *data), void *user_data) {
return plt_add_file2 (plt, NULL, fname, pabort, cb, user_data);
}
Both implementations provide similar functionality, but DeaDBeeF's approach allows for more flexibility with callback functions and user data.
Music player and music library manager for Linux, Windows, and macOS
Pros of Quodlibet
- More extensive tagging and metadata support
- Advanced search and filtering capabilities
- Better handling of large music libraries
Cons of Quodlibet
- Steeper learning curve due to more complex features
- Slower startup time, especially with large libraries
- Less intuitive interface for casual users
Code Comparison
Audacious (C):
static void
playlist_add_url_string(const gchar * url)
{
gchar * uri = audacious_url_string_to_uri(url);
if (uri)
playlist_entry_insert(playlist_get_active(), -1, uri, NULL);
g_free(uri);
}
Quodlibet (Python):
def add_filename(self, filename, library=None):
if library is None:
library = self.library
song = library.add_filename(filename)
if song:
self.add([song])
return song
Both code snippets demonstrate adding a file to the playlist, but Quodlibet's implementation is more high-level and Pythonic, while Audacious uses lower-level C functions.
Convert
designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
Audacious
Overview
Audacious is a lightweight, open-source audio player focused on high audio quality and low resource usage. It supports a wide range of audio formats and provides a flexible plugin system for extending functionality.
Features
- Fast and lightweight with low system resource usage
- Runs on Linux, BSD derivatives, macOS and Windows
- Wide support for audio formats
- Plugin-based architecture
- Multiple user interfaces:
- GTK interface
- Qt interface
- Winamp interface, including support for Winamp 2 skins
- Advanced playlist management
- Built-in equalizer, audio effects and visualizations
- Support for ReplayGain and gapless playback
- Controllable also via MPRIS and with
audtool
Installation
Prebuilt Packages
Most Linux distributions provide Audacious in their respective package repositories. For Windows we offer an installer. On macOS, Audacious can be installed using Homebrew.
There are also Flatpak and Snap packages of Audacious, however we do neither provide nor support them. So if you have an issue with these packages, make sure it also affects ordinary installation methods before reporting it to us.
See also the download instructions on our website.
Building from Source
Requirements
- Meson
- GCC or Clang
- pkg-config
- Required development libraries (GTK/Qt, GLib, audio backends, codecs, etc.)
Reading our build pipeline installation script may help with the package names when using Ubuntu or macOS.
Build Steps
After downloading the source code, you need to create a build directory (e.g.
meson setup build). To view a list of all supported build options, you can use
the command meson configure build. Alternatively inspect the file meson_options.txt.
Logs can be found in meson-logs within your build directory.
Example:
meson setup build # pass custom build options with -D option=value
meson compile -C build # start building
meson install -C build # install the built software
Consult the official Meson documentation for more details, e.g. Running Meson and Configuring a build directory.
Plugins
Audacious uses a modular plugin system to provide most of its functionality. Many plugins are included in the audacious-plugins package, officially provided and supported by the Audacious developers. But there are also third-party plugins available, install and use them at your own risk though.
Plugins can be enabled or disabled at runtime within the Audacious settings window. When using the GTK or Qt interface, several plugins (e.g. album cover, lyrics, file browser, visualizations) can be docked into the main window.
Plugin Types
- General plugins â provide additional features (e.g. lyrics viewer, last.fm, playlist manager)
- Effect plugins â apply audio processing (e.g. echo, equalizer, speed and pitch)
- Visualization plugins â display visual effects (e.g. spectrum analyzer, VU meter)
- Input plugins â decode audio formats (e.g. MP3, FLAC, Ogg Vorbis, Opus)
- Output plugins â handle audio playback devices (e.g. ALSA, PipeWire, PulseAudio)
- Playlist plugins â offer support for various playlist formats (e.g. M3U, ASX, Cuesheets)
- Transport plugins â allow reading from streams or file shares (e.g. HTTPS, FTP, SMB)
Supported Formats
Supported audio formats depend on enabled plugins but typically include:
- MP3
- FLAC
- Ogg Vorbis
- Opus
- AAC / M4A
- WAV
- WavPack
- Ad-lib chiptunes
- Audio CD
- MIDI
- Nintendo DS (2SF)
- PlayStation Audio (PSF)
- Tracker formats (MOD, XM, etc.)
- ⦠and many more (through FFmpeg)
Troubleshooting
- Read Common Problems on our website
- Make sure to use the latest Audacious version
- Enable verbose output (with
audacious -Von the command line) - Check our issue tracker and forum for similar reports (also closed ones)
Contributing
Contributions are welcome!
How to Contribute
- Submit pull requests for fixes or feature requests
- Support and help others in our forum
- Report issues in our bug tracker
- Translate Audacious into your native language
- Recommend and advertise Audacious to your friends
Before submitting large changes, consider opening a forum thread first to discuss your ideas. Also remember that the developers of Audacious are volunteers and can only spend a limited amount of their free time on the project.
License
Audacious is licensed under the BSD-2-Clause license. Please note that many of the plugins distributed with Audacious are under different licenses. See the COPYING file and the respective plugin source code for more details.
Links
- Homepage: https://audacious-media-player.org
- Source Code Repository: https://github.com/audacious-media-player
- Issue Tracker: https://github.com/audacious-media-player/audacious/issues
- Forum: https://github.com/orgs/audacious-media-player/discussions
- Translations: https://app.transifex.com/audacious
Top Related Projects
:tangerine: Clementine Music Player
Small, fast and powerful console music player for Unix-like operating systems.
DeaDBeeF Player
Music player and music library manager for Linux, Windows, and macOS
Convert
designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot