Giter Club home page Giter Club logo

soundux's Introduction

Soundboard
Soundux

A universal soundboard in Qt for linux using pulseaudio modules

Last Commit License Travis

Index

Introduction

I didn't find any good soundboard application for linux so I created one. It uses pulseaudio modules to achieve a universal interface. You can select every recording stream for the audio output. The GUI is written with Qt.

It is currently in alpha because I don't know if this works for everyone.

Runtime Dependencies

Please refer to your distro instructions on how to install

Compilation & Installation

Arch Linux and derivatives

You can install my package with your AUR helper of choice which will automatically compile and install the master branch

yay -S soundux-git

Other distros

Dependencies

This list may be not accurate. Contact me if you find missing dependencies that I can update this list

Install dependencies for Ubuntu and derivatives (Thanks to @Tibladar)

sudo apt install git golang-go qt5-default libqt5x11extras5-dev mpg123
go get qpm.io/qpm

Build

Clone the repository

git clone https://github.com/D3S0X/Soundux.git
cd Soundux

Install dependencies

# If you installed qpm via go
~/go/bin/qpm install
# Otherwise
qpm install

Create a build folder and start compilation

mkdir build
cd build
qmake ..
make

To start the program

./Soundux

Install

Automated Installation is currently not available but will be available in the future. (You may look into my arch package and figure it out for your distro)

Why Soundux?

Soundboard for Linux

License

The code is licensed under GPLv3

TODO

  • Don't assume that the QListWidgetItem is a SoundListWidgetItem. Can we make SoundListView host SoundListWidgetItems
  • Playlist mode (play sounds one after another)
  • Improve the logo
  • Volume normalization
  • Play sounds while another sound is playing
  • Organize code
  • Grid View
  • Save window size
  • Save volume states (+ Sync state)
  • Option to only trigger hotkeys from current tab
  • Only modify audio players started from this programm (stop, volume)
  • Fix volume slider not working while playback
  • Save positions when tabs moved
  • Localization
  • Package it as deb and flatpak and create a repology
  • Change back recording streams when the program is closed (to fix a bug when the program is closed while playing a sound)
  • Make it cross-platform (help on how to pass the sound to an application in Windows/macOS is greatly appreciated)
  • CTRL + F and focus search box
  • Hotkeys for folder tabs
  • Make UI responsive
  • Search sounds
  • Refresh button for folder tabs
  • Find a fancy name
  • CTRL+Q to quit
  • Automatically update files in folders (on startup?)
  • Separate volume sliders for me and for others (and a toggle to sync it)
  • Global Hotkeys
  • Check if dependencies are installed otherwise show a warning
  • Repeat button
  • Add support for other audio formats
  • Add folders and automatically create a tab for it
  • Create tabs to better organize your sounds
  • Double click items to play
  • Add multiple files at once
  • Save configuration in .config folder instead of in the same folder as the binary
  • Play sounds async
  • Implement stop feature

soundux's People

Contributors

d3sox avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.