2021-01-26 22:45:13 +01:00
# This is the old Linux only Qt Widgets codebase. [See the new, current version](https://github.com/Soundux/Soundux)
2019-10-06 13:52:49 +02:00
< div align = "center" >
< p >
2019-10-06 14:02:10 +02:00
< h1 >
2019-10-06 14:05:36 +02:00
< a href = " #readme " >
2020-04-16 20:45:59 +02:00
< img src = "icon.png" width = "50" alt = "Soundboard" / >
2019-10-06 14:05:36 +02:00
< / a >
2019-10-06 14:02:10 +02:00
< br / >
2020-04-05 17:19:37 +02:00
Soundux
2019-10-06 14:02:10 +02:00
< / h1 >
2019-10-06 13:52:49 +02:00
< h4 > A universal soundboard in Qt for linux using pulseaudio modules< / h4 >
< / p >
< p >
2020-07-19 23:01:03 +02:00
< a href = "https://github.com/D3SOX/Soundux/releases" >
< img src = "https://img.shields.io/github/last-commit/D3SOX/Soundux.svg?style=for-the-badge" alt = "Last Commit" / >
2019-10-06 13:52:49 +02:00
< / a >
2020-07-19 23:01:03 +02:00
< a href = "https://github.com/D3SOX/Soundux/blob/master/LICENSE" >
< img src = "https://img.shields.io/github/license/D3SOX/Soundux.svg?style=for-the-badge" alt = "License" / >
2019-10-06 13:52:49 +02:00
< / a >
2020-07-19 23:01:03 +02:00
< a href = "https://travis-ci.com/D3SOX/Soundux" >
< img src = "https://img.shields.io/travis/com/D3SOX/Soundux?style=for-the-badge" alt = "Travis" / >
2020-04-08 10:20:28 +02:00
< / a >
2019-10-06 13:52:49 +02:00
< / p >
< / div >
## Index
- [Introduction ](#introduction )
2019-10-18 00:26:14 +02:00
- [Runtime Dependencies ](#runtime-dependencies )
- [Compilation & Installation ](#compilation--installation )
- [Arch Linux and derivatives ](#arch-linux-and-derivatives )
- [Other distros ](#other-distros )
- [Dependencies ](#dependencies )
2019-11-06 21:50:48 +01:00
- [Install dependencies for Ubuntu and derivatives (Thanks to @Tibladar) ](#install-dependencies-for-ubuntu-and-derivatives-thanks-to-tibladar )
2019-10-18 00:26:14 +02:00
- [Build ](#build )
- [Install ](#install )
2020-04-06 01:17:00 +02:00
- [Why _Soundux_? ](#why-soundux )
2019-10-06 13:52:49 +02:00
- [License ](#license )
- [TODO ](#todo )
# Introduction
2019-09-18 20:48:32 +02:00
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.
2019-09-15 03:14:34 +02:00
It is currently in alpha because I don't know if this works for everyone.
2019-10-18 00:26:14 +02:00
# Runtime Dependencies
2020-04-16 20:45:59 +02:00
Please refer to your distro instructions on how to install
2019-10-18 00:26:14 +02:00
- [pulseaudio ](https://gitlab.freedesktop.org/pulseaudio/pulseaudio )
- [mpg123 ](https://www.mpg123.de/ ) (optional: for playing mp3 files)
2019-10-06 13:11:44 +02:00
2019-10-18 00:26:14 +02:00
# Compilation & Installation
2019-10-06 13:52:49 +02:00
2019-10-18 00:26:14 +02:00
## Arch Linux and derivatives
2020-04-06 01:08:08 +02:00
You can install my package with your AUR helper of choice which will automatically compile and install the master branch
2019-10-18 00:26:14 +02:00
```sh
2020-04-06 01:08:08 +02:00
yay -S soundux-git
2019-10-18 00:26:14 +02:00
```
## Other distros
### Dependencies
2019-10-06 13:52:49 +02:00
This list may be not accurate. Contact me if you find missing dependencies that I can update this list
2019-11-03 23:40:56 +01:00
- [qpm ](https://github.com/Cutehacks/qpm )
2019-10-18 00:26:14 +02:00
- [qt5-base ](https://github.com/qt/qtbase )
- [qt5-tools ](https://github.com/qt/qt5 )
2019-10-06 13:11:44 +02:00
2019-11-06 21:50:48 +01:00
### Install dependencies for Ubuntu and derivatives (Thanks to @Tibladar)
```sh
2019-11-10 15:22:15 +01:00
sudo apt install git golang-go qt5-default libqt5x11extras5-dev mpg123
2019-11-06 21:50:48 +01:00
go get qpm.io/qpm
```
2019-10-18 00:26:14 +02:00
### Build
Clone the repository
2019-09-15 03:14:34 +02:00
```sh
2020-07-19 23:01:03 +02:00
git clone https://github.com/D3SOX/Soundux.git
2020-04-05 17:19:37 +02:00
cd Soundux
2019-10-18 00:26:14 +02:00
```
2019-11-06 21:50:48 +01:00
Install dependencies
2019-10-18 00:26:14 +02:00
```sh
2019-11-06 21:50:48 +01:00
# If you installed qpm via go
~/go/bin/qpm install
# Otherwise
2019-11-03 23:40:56 +01:00
qpm install
2019-11-06 21:50:48 +01:00
```
Create a build folder and start compilation
```sh
2019-10-06 13:11:44 +02:00
mkdir build
cd build
2019-11-03 23:40:56 +01:00
qmake ..
2019-09-15 03:14:34 +02:00
make
2019-10-18 00:26:14 +02:00
```
To start the program
```sh
2020-04-05 17:19:37 +02:00
./Soundux
2019-09-15 03:14:34 +02:00
```
2019-09-18 19:51:12 +02:00
2019-10-18 00:26:14 +02:00
### Install
2020-04-06 01:08:08 +02:00
Automated Installation is currently not available but will be available in the future. (You may look into my [arch package ](https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=soundux-git ) and figure it out for your distro)
2019-10-06 13:52:49 +02:00
2020-04-06 01:17:00 +02:00
# Why _Soundux_?
**Sound**board for Lin**ux**
2019-10-06 13:52:49 +02:00
# License
The code is licensed under [GPLv3 ](LICENSE )
2019-09-18 19:51:12 +02:00
# TODO
2020-06-26 21:12:32 +02:00
- [ ] Don't assume that the QListWidgetItem is a SoundListWidgetItem. Can we make SoundListView host SoundListWidgetItems
2020-03-24 20:31:13 +01:00
- [ ] Playlist mode (play sounds one after another)
2020-04-05 17:19:37 +02:00
- [ ] Improve the logo
2020-06-26 00:26:45 +02:00
- [ ] Volume normalization
2019-10-06 22:00:44 +02:00
- [ ] Play sounds while another sound is playing
2019-10-09 22:14:11 +02:00
- [ ] Organize code
2020-06-19 20:37:07 +02:00
- [ ] Grid View
2020-06-26 21:12:32 +02:00
- [ ] Save window size
2020-06-26 00:26:45 +02:00
- [ ] Save volume states (+ Sync state)
2020-04-06 01:10:51 +02:00
- [ ] Option to only trigger hotkeys from current tab
2019-10-17 23:17:10 +02:00
- [ ] Only modify audio players started from this programm (stop, volume)
2019-11-09 00:29:12 +01:00
- [ ] Fix volume slider not working while playback
2019-10-08 00:31:44 +02:00
- [ ] Save positions when tabs moved
2019-10-17 23:30:50 +02:00
- [ ] Localization
2020-06-19 20:37:07 +02:00
- [ ] Package it as deb and flatpak and create a repology
2019-10-06 13:11:44 +02:00
- [ ] Change back recording streams when the program is closed (to fix a bug when the program is closed while playing a sound)
2020-04-08 14:14:44 +02:00
- [ ] Make it cross-platform (help on how to pass the sound to an application in Windows/macOS is greatly appreciated)
2020-06-29 00:21:44 +02:00
- [x] CTRL + F and focus search box
2020-06-26 00:26:45 +02:00
- [x] Hotkeys for folder tabs
2020-06-19 20:37:07 +02:00
- [x] Make UI responsive
- [x] Search sounds
2020-04-05 17:19:37 +02:00
- [x] Refresh button for folder tabs
- [x] Find a fancy name
- [x] CTRL+Q to quit
2020-02-07 23:10:45 +01:00
- [x] Automatically update files in folders (on startup?)
2020-04-06 01:10:51 +02:00
- [x] Separate volume sliders for me and for others (and a toggle to sync it)
2019-11-03 23:40:56 +01:00
- [x] Global Hotkeys
2019-10-17 23:30:50 +02:00
- [x] Check if dependencies are installed otherwise show a warning
2019-10-17 23:17:10 +02:00
- [x] Repeat button
- [x] Add support for other audio formats
2019-10-09 22:14:11 +02:00
- [x] Add folders and automatically create a tab for it
2019-10-08 00:31:44 +02:00
- [x] Create tabs to better organize your sounds
2019-10-07 01:43:35 +02:00
- [x] Double click items to play
2019-10-06 23:25:17 +02:00
- [x] Add multiple files at once
2019-10-06 01:28:46 +02:00
- [x] Save configuration in .config folder instead of in the same folder as the binary
2019-10-06 01:32:51 +02:00
- [x] Play sounds async
- [x] Implement stop feature