# ffx quickly apply audio effects using ffmpeg

to install: run command 'chmod +x ffx.sh' in same directory as `ffx.sh`

supports 

-mp3, wav, flac, ogg, opus, m4a, aac, and mka

features

-bass, treble, volume, distortion
-trim audio
-tempo change with pitch preserving
-pitch change

examples

usage: ffx.sh bass audio.mp3 10 1

helper commands: ffbass "audio.mp3" 10 1
---

help and version
./ffx.sh --help
./ffx.sh --version

bass and treble
./ffx.sh bass song.mp3 25 bass-song.mp3
./ffx.sh treble song.mp3 20 bright-song.mp3

volume
./ffx.sh volume song.mp3 -6 quieter-song.mp3
./ffx.sh volume song.mp3 3 louder-song.mp3

distortion
./ffx.sh distort guitar.wav 5 distorted-guitar.wav

trim audio
./ffx.sh trim song.mp3 10 30 clip.mp3
./ffx.sh trim podcast.mp3 30 no-intro.mp3

tempo with pitch preservation
./ffx.sh tempo lecture.mp3 1.5 fast-lecture.mp3
./ffx.sh tempo song.mp3 0.75 slower-song.mp3

pitch with duration preservation
./ffx.sh pitch vocal.wav 3 higher-vocal.wav
./ffx.sh pitch vocal.wav -5 lower-vocal.wav

convert while editing
./ffx.sh volume input.wav -3 output.mp3

automatic output filename
./ffx.sh bass song.mp3 30


install helper commands
./ffx.sh --add-helper-cmd

command helper usages
  ffbass   INPUT PERCENT [FINE_DB] [OUTPUT]
  fftreble INPUT PERCENT [FINE_DB] [OUTPUT]

    33 = 16.5 dB (half of 33 dB)
    66 = 33 dB
    100 = 50 dB
    FINE_DB is added/subtracted afterward.

  ffvolume  INPUT DB [OUTPUT]
  ffdistort INPUT [DRIVE_0_TO_10] [OUTPUT]
  fftrim    INPUT START_SECONDS [END_SECONDS] [OUTPUT]
  fftempo   INPUT SPEED_0.125_TO_8 [OUTPUT]       # preserves pitch
  ffpitch   INPUT SEMITONES_-36_TO_36 [OUTPUT]    # preserves duration

defaults:
  output uses the source extension and a unique suffix.
  use an explicit filename ending in .mp3 for MP3 output.

examples:
  ffbass "audio.mp3" 33 2
  ffbass "song.wav" 33 2 "bass.mp3"
  fftreble "song.flac" 66 -4 "treble.flac"
  ffvolume "song.mp3" -3
  ffdistort "song.wav" 4 "distorted.mp3"
  fftrim "song.mp3" 12.5 48 "clip.mp3"
  fftempo "song.mp3" 0.5 "slow.mp3"
  ffpitch "song.mp3" -3 "lower.mp3"