diff options
Diffstat (limited to 'assets')
| -rw-r--r-- | assets/easyeffects-eq-presets.org | 47 | ||||
| -rwxr-xr-x | assets/easyeffects-eq-presets.sh | 63 |
2 files changed, 110 insertions, 0 deletions
diff --git a/assets/easyeffects-eq-presets.org b/assets/easyeffects-eq-presets.org new file mode 100644 index 0000000..37f6478 --- /dev/null +++ b/assets/easyeffects-eq-presets.org @@ -0,0 +1,47 @@ +#+TITLE: EasyEffects EQ Presets - Installation Guide +#+DATE: 2026-01-28 + +* Overview + +Three parametric EQ presets targeting the Harman frequency response curve, formatted for EasyEffects (PipeWire). + +| Preset File | Headphone | Source | Bands | Preamp | +|-----------------------------------+------------------------------+----------------------------+-------+---------| +| dt770-pro-250-harman-eq.json | Beyerdynamic DT 770 Pro 250 | oratory1990 (hand-tuned) | 9 | -4.7 dB | +| pxc-550-ii-harman-eq.json | Sennheiser PXC 550-II | AutoEQ / oratory1990 meas. | 10 | -3.0 dB | +| pixel-buds-pro-2-harman-eq.json | Google Pixel Buds Pro 2 | AutoEQ / DHRME meas. | 10 | -2.8 dB | + +* Prerequisites + +- PipeWire (replaces PulseAudio) +- pipewire-pulse +- EasyEffects (~sudo pacman -S easyeffects~) + +* Programmatic Install + +#+begin_src sh +./easyeffects-eq-presets.sh install +#+end_src + +Or manually: + +#+begin_src sh +mkdir -p ~/.config/easyeffects/output +cp *.json ~/.config/easyeffects/output/ +#+end_src + +* Manual Usage + +1. Open EasyEffects (search in app launcher or run ~easyeffects~) +2. Go to the *Output* tab (speaker icon, top left) +3. Click the *Presets* dropdown (top bar) +4. Select the preset matching your current headphone +5. Switch presets when you switch headphones + +* Notes + +- EasyEffects applies EQ system-wide to whatever PipeWire output is active, including Bluetooth +- Switch presets when switching between headphones — using the wrong preset will sound worse than no EQ +- The DT 770 preset is for the 250 Ohm version specifically (other impedance variants have different frequency responses) +- The PXC 550-II and Pixel Buds Pro 2 presets are AutoEQ-generated (algorithmically computed from measurements), not hand-tuned by oratory1990 +- To start EasyEffects minimized at login: ~easyeffects --gapplication-service~ diff --git a/assets/easyeffects-eq-presets.sh b/assets/easyeffects-eq-presets.sh new file mode 100755 index 0000000..40e9cd9 --- /dev/null +++ b/assets/easyeffects-eq-presets.sh @@ -0,0 +1,63 @@ +#!/usr/bin/env bash +# Install EasyEffects parametric EQ presets (Harman target) +# +# Presets: +# dt770-pro-250-harman-eq.json - Beyerdynamic DT 770 Pro 250 Ohm (oratory1990) +# pxc-550-ii-harman-eq.json - Sennheiser PXC 550-II (AutoEQ/oratory1990) +# pixel-buds-pro-2-harman-eq.json - Google Pixel Buds Pro 2 (AutoEQ/DHRME) +# +# Prerequisites: easyeffects, pipewire, pipewire-pulse +# +# Usage: ./easyeffects-eq-presets.sh [install|uninstall] + +set -euo pipefail + +SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" +PRESET_DIR="${HOME}/.config/easyeffects/output" + +PRESETS=( + "dt770-pro-250-harman-eq.json" + "pxc-550-ii-harman-eq.json" + "pixel-buds-pro-2-harman-eq.json" +) + +install_presets() { + # Ensure easyeffects is installed + if ! command -v easyeffects &>/dev/null; then + echo "easyeffects not found. Installing..." + sudo pacman -S --needed --noconfirm easyeffects + fi + + mkdir -p "$PRESET_DIR" + + for preset in "${PRESETS[@]}"; do + if [[ -f "${SCRIPT_DIR}/${preset}" ]]; then + cp "${SCRIPT_DIR}/${preset}" "${PRESET_DIR}/${preset}" + echo "Installed: ${preset}" + else + echo "Warning: ${preset} not found in ${SCRIPT_DIR}" >&2 + fi + done + + echo "" + echo "Presets installed to ${PRESET_DIR}" + echo "Open EasyEffects and select a preset from the dropdown." +} + +uninstall_presets() { + for preset in "${PRESETS[@]}"; do + if [[ -f "${PRESET_DIR}/${preset}" ]]; then + rm "${PRESET_DIR}/${preset}" + echo "Removed: ${preset}" + fi + done +} + +case "${1:-install}" in + install) install_presets ;; + uninstall) uninstall_presets ;; + *) + echo "Usage: $0 [install|uninstall]" >&2 + exit 1 + ;; +esac |
