Skip to content
This repository has been archived by the owner on Dec 13, 2023. It is now read-only.

Commit

Permalink
fix: changelog and readme for v1.2.0
Browse files Browse the repository at this point in the history
  • Loading branch information
Harry Stanton committed Aug 20, 2023
1 parent d2ef5d7 commit 1acd301
Show file tree
Hide file tree
Showing 4 changed files with 80 additions and 37 deletions.
28 changes: 27 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,32 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [v1.2.0] - 2023/08/20

### Added

- **PipeWire is officially supported!**
- Utilizes `pactl`.
- On Ubuntu / Debian / Mint / Pop!_OS you'll need `pulseaudio-utils` and `pipewire-pulse` (`.deb` will auto install).
- On most other distros `pipewire-pulse` provides `pactl` (check your distro documentation before installing).
- The active preset is now clearly selected in the UI.
- Lyrebird dependencies (Python modules and shell commands) are now checked at application launch resulting in a warning alert when something is missing instead of a crash later down the line.

### Changed

- Custom presets have been overhauled:
- Default presets now live in Lyrebird instead of `presets.toml` meaning that they can be more easily kept up to date.
- Launching Lyrebird v1.2.0 will now automatically migrate your `presets.toml` by removing all the old defaults while retaining your custom presets. A backup (`presets.toml.old`) is made in the unlikely case of any presets being lost during the migration.
- Preset options have been changed while remaining fully backwards compatible:
- `pitch_value`, `downsample_amount`, and `volume_boost` can now be omitted instead of providing `none` or `scale`.
- `override_pitch_scale` is now deprecated and no longer has an effect, to achieve the same effect omit `pitch_value`.
- Custom presets are now validated at launch and will be disabled if they are malformed along with a warning alert.
- Only Lyrebird controlled PulseAudio sinks are now unloaded instead of all sinks on the system. This fixes a crash on some distros.
- The pitch slider is no longer disabled when a preset is active.
- Default buffer size for SoX is now 128, recommended that you change in `~/.config/lyrebird/config.toml` for improved latency.
- Codebase has been refactored into `core` and `ui`. Audio related methods now live in `core/audio.py` instead of the UI code.
- `AudioVideo` category added to `.desktop`.

## [v1.1.0] - 2020/08/30

### Added
Expand Down Expand Up @@ -44,4 +70,4 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Added

- Initial version of Lyrebird with options to change pitch of voice and downsample audio
- Presets and config are at `/etc/lyrebird`
- Presets and config are at `/etc/lyrebird`
83 changes: 50 additions & 33 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,27 +18,45 @@ Simple and powerful voice changer for Linux, written with Python & GTK.

## Install

### Distro Packages
Once installed, Lyrebird can be launched from your launcher (GNOME, Xfce, Rofi) or by running `lyrebird` in the command line.

Check the [releases page](https://github.com/lyrebird-voice-changer/lyrebird/releases) to find a package for your distro.
### Ubuntu / Debian / Mint / Pop!_OS

- [x] Ubuntu/Debian (download `.deb` from [releases page](https://github.com/lyrebird-voice-changer/lyrebird/releases))
- [x] Arch (AUR package `lyrebird`)
```sh
wget "https://github.com/lyrebird-voice-changer/lyrebird/releases/download/v1.2.0/lyrebird_1.2.0-1.deb" && sudo apt install ./lyrebird_1.2.0-1.deb
```

#### Community
You can find more [releases here](https://github.com/lyrebird-voice-changer/lyrebird/releases).

These packages are provided by the community and are not maintained by Lyrebird developers.
### Arch Linux

- [x] Gentoo (ebuild in the [edgets overlay](https://github.com/BlueManCZ/edgets/tree/master/media-sound/lyrebird))
Use an AUR package manager?

```sh
yay -S lyrebird
```

Otherwise:

```sh
wget "https://github.com/lyrebird-voice-changer/lyrebird/releases/download/v1.2.0/lyrebird-1.2.0-1-any-archlinux.pkg.tar.zst" && sudo pacman -U lyrebird-1.2.0-1-any-archlinux.pkg.tar.zst
```

You can find more [releases here](https://github.com/lyrebird-voice-changer/lyrebird/releases).

### Manually

If a package for your distro isn't provided above then you can install the requirements below and use the provided installer script:

1. Download the latest `tar.gz` from the [releases page](https://github.com/lyrebird-voice-changer/lyrebird/releases) and extract it
2. Make sure you satisfy all requirements listed below (e.g. Python 3.7, using PulseAudio, sox)
3. Run `install.sh` to install dependencies and Lyrebird itself
4. Launch Lyrebird from your preferred application launcher (e.g. GNOME, Rofi)
```sh
wget "https://github.com/lyrebird-voice-changer/lyrebird/releases/download/v1.2.0/lyrebird_1.2.0-1.tar.gz" && tar xf lyrebird_1.2.0-1.tar.gz && cd lyrebird_1.2.0-1 && sudo ./install.sh
```

### Community Packages

These packages are provided by the community and are not maintained by Lyrebird developers.

- [x] Gentoo (ebuild in the [edgets overlay](https://github.com/BlueManCZ/edgets/tree/master/media-sound/lyrebird))

## Requirements

Expand All @@ -49,11 +67,12 @@ Installing via package manager will automatically install these packages, only c
- **python-gobject** - Ubuntu/Debian `python3-gi` / Arch `python-gobject`
- **pavucontrol** - Ubuntu/Debian `pavucontrol` / Arch `pavucontrol`
- **SoX** - Ubuntu/Debian `sox libsox-fmt-pulse` / Arch `sox`
- PulseAudio utilities (compatible with PipeWire) - Ubuntu/Debian `pipewire-pulse pulseaudio-utilities`
- **PipeWire**
- **PulseAudio utilities** (compatible with PipeWire) - Ubuntu/Debian `pipewire-pulse pulseaudio-utils` / Arch `pipewire-pulse`

One-liners for install:
One-liners to install requirements:

* Ubuntu/Debian - `sudo apt install python3 python3-toml python3-gi pavucontrol sox libsox-fmt-pulse pulseaudio-utilities`
* Ubuntu/Debian - `sudo apt install python3 python3-toml python3-gi pavucontrol sox libsox-fmt-pulse pulseaudio-utils`
* Arch - `sudo pacman -S python3 python-toml python-gobject pavucontrol sox`

*(If you wish to see your distro here please submit an issue/pull request for this section.)*
Expand Down Expand Up @@ -89,31 +108,29 @@ If the issue still sticks around then please open a GitHub issue and include the

## Editing Presets

Presets and config is initally stored in `/etc/lyrebird/` however it can be overriden by copying the files to `~/.config/lyrebird/`.

To edit and add your own presets edit the file `presets.toml`, this file is in the TOML format and the syntax is described below.
Custom presets are stored in `~/.config/lyrebird/presets.toml`. To edit and add your own presets edit the file `presets.toml`, this file is in the TOML format and the syntax is described below.

```toml
# name = Preset name, will be displayed in the GUI
# pitch_value = The pitch value of the preset, if you want to be able to adjust this use "scale"
# downsample_amount = The amount of downsampling to do, set as "none" if you don't want any
# override_pitch_slider = Whether the preset overrides the pitch slider or not
# volume_boost = The amount of decibels to boost by

# Example preset, the [[presets]] is required for each preset
[[presets]]
name = "Woman"
pitch_value = "2.5"
downsample_amount = "none"
override_pitch_slider = true

# Boost by 2 dB to make the voice louder
volume_boost = "2"
# Effect presets are defined in presets.toml
# The following parameters are available for presets

# name: Preset name, will be displayed in the GUI
# pitch_value: The pitch value of the preset, float value between -10.0 to 10.0. Omit if pitch value should not be affected from slider value.
# downsample_amount Downsample by an integer factor.
# volume_boost: Amount in dB to boost the audio. Can be negative to make the audio quieter.

# e.g.
# [[presets]]
# name = "Bad Mic"
# pitch_scale = -1.5
# downsample_amount = 8
# volume_boost = 8
```

## Packaging

* Packaging for Debian is handled in a (separate repo)[https://github.com/lyrebird-voice-changer/lyrebird-deb].
* Packaging for Debian is handled in a [separate repo](https://github.com/lyrebird-voice-changer/lyrebird-deb).
* Packaging for Arch (AUR) is handled in a [separate repo](https://github.com/lyrebird-voice-changer/lyrebird-arch).

## Developers

Expand Down
4 changes: 2 additions & 2 deletions app.py
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@
if not Launch.check_pactl():
console_msg = '''[error] PulseAudio utilities are missing from your system.
* On Ubuntu, Debian, pop_OS, or Mint, try running: sudo apt install pulseaudio-utilities
* On Ubuntu, Debian, pop_OS, or Mint, try running: sudo apt install pulseaudio-utils
* On Arch, this comes with the package "pipewire-pulse", please refer to the Arch Wiki page (below).
* On all other distros, this package may have a different name, try searching for "pactl" or "pulseaudio utilities".
Expand All @@ -64,7 +64,7 @@
msg = '''<b>Error:</b> PulseAudio utilities are missing from your system.
On Ubuntu, Debian, pop_OS, or Mint, try running:
<i>sudo apt install pulseaudio-utilities</i>
<i>sudo apt install pulseaudio-utils</i>
On Arch, this comes with the package <i>pipewire-pulse</i>, please refer to the <a href="https://wiki.archlinux.org/title/PipeWire">Arch Wiki page</a>.
Expand Down
2 changes: 1 addition & 1 deletion install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
# Lyrebird installer script. If running as root then will install at /usr/local/{bin,share},
# otherwise will install at ~/.local/{bin,share}.

VERSION="1.1"
VERSION="1.2.0"

VERBOSE=${VERBOSE:-1}
DRYRUN=${DRYRUN:-0}
Expand Down

0 comments on commit 1acd301

Please sign in to comment.