Soundux/README.md

146 lines
4.9 KiB
Markdown
Raw Permalink Normal View History

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 />
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)
- [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
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
- [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
### Install dependencies for Ubuntu and derivatives (Thanks to @Tibladar)
```sh
sudo apt install git golang-go qt5-default libqt5x11extras5-dev mpg123
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
cd Soundux
2019-10-18 00:26:14 +02:00
```
Install dependencies
2019-10-18 00:26:14 +02:00
```sh
# If you installed qpm via go
~/go/bin/qpm install
# Otherwise
qpm install
```
Create a build folder and start compilation
```sh
2019-10-06 13:11:44 +02:00
mkdir build
cd build
qmake ..
2019-09-15 03:14:34 +02:00
make
2019-10-18 00:26:14 +02:00
```
To start the program
```sh
./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
- [ ] 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
2019-10-09 22:14:11 +02:00
- [ ] Organize code
- [ ] Grid View
- [ ] Save window size
- [ ] Save volume states (+ Sync state)
2020-04-06 01:10:51 +02:00
- [ ] 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
2019-10-08 00:31:44 +02:00
- [ ] Save positions when tabs moved
- [ ] Localization
- [ ] 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)
- [x] CTRL + F and focus search box
- [x] Hotkeys for folder tabs
- [x] Make UI responsive
- [x] Search sounds
- [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)
- [x] Global Hotkeys
- [x] Check if dependencies are installed otherwise show a warning
- [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
- [x] Double click items to play
2019-10-06 23:25:17 +02:00
- [x] Add multiple files at once
- [x] Save configuration in .config folder instead of in the same folder as the binary
- [x] Play sounds async
- [x] Implement stop feature