diff options
| author | martin | 2022-05-01 22:41:20 +0200 |
|---|---|---|
| committer | GitHub | 2022-05-01 22:41:20 +0200 |
| commit | 4c5aa37aa6f41d909153a2b7d522db6d7582659a (patch) | |
| tree | 326aa67921439defcb8c25ea5f770feb63e878a4 /README.md | |
| parent | 4a3ff8bfce622de0e5affa312d50557b5d336371 (diff) | |
| parent | 820358a79a87b214139eb7693ce80e96be79e3d8 (diff) | |
Merge pull request #69 from djfun/feature-newgui
GUI Redesign with Component System
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 112 |
1 files changed, 76 insertions, 36 deletions
@@ -1,43 +1,58 @@ -audio-visualizer-python -======================= +# audio-visualizer-python +**We need a good name that is not as generic as "audio-visualizer-python"!** -This is a little GUI tool which creates an audio visualization video from an input audio. -You can also give it a background image and set a title text. +This is a little GUI tool which creates an audio visualization video from an input audio file. Different components can be added and layered to change the resulting video and add images, videos, gradients, text, etc. Encoding options can be changed with a variety of different output containers. -I have tested the program on Linux (Ubuntu 16.04) and Windows (Windows 7), it should also work on Mac OS X. If you encounter problems -running it or have other bug reports or features, that you wish to see implemented, please fork the project and send me a pull request and/or file an issue on this project. +Projects can be created from the GUI and used in commandline mode for easy automation of video production. For more information use `avp --help` or for help with a particular component use `avp -c 0 componentName help`. -I also need a good name that is not as generic as "audio-visualizer-python"! +The program works on Linux, macOS, and Windows. If you encounter problems running it or have other bug reports or features that you wish to see implemented, please fork the project and submit a pull request and/or file an issue on this project. To gather extra information to help us debug the problem, run `avp -t` and include the text file it creates. -Dependencies ------------- -You need Python 3, PyQt4, PIL (or Pillow), numpy and the program ffmpeg, which is used to read the audio and render the video. -Installation ------------- -### Manual installation on Ubuntu -* Get all the python stuff: `sudo apt install python3 python3-pyqt4 python3-pil python3-numpy` -* If you have PyQt5 installed, get pillow (at least version 3.3.0) from pip: `apt install python3-pip; pip3 install pillow` -* Get ffmpeg/avconv: -You can either use `avconv` from the standard repositories (package `libav-tools`) or get `ffmpeg` from the [website](http://ffmpeg.org/) or from a PPA (e.g. [https://launchpad.net/~jon-severinsson/+archive/ubuntu/ffmpeg](https://launchpad.net/~jon-severinsson/+archive/ubuntu/ffmpeg). The program does automatically detect if you don't have the ffmpeg binary and tries to use avconv instead. +# Examples +## What the app creates +* **[YouTube: A day in spring](https://www.youtube.com/watch?v=-M3jR1NuJHM)** -Download audio-visualizer-python from this repository and run it with `python3 main.py`. +## Graphical version demo +* [YouTube: Audio Visualizer demonstration](https://www.youtube.com/watch?v=EVt2ckQs1Yg) -### Manual installation on Windows -* Download and install Python 3.4 from [https://www.python.org/downloads/windows/](https://www.python.org/downloads/windows/) -* Download and install PyQt4 for Python 3.4 and Qt4 from [http://www.riverbankcomputing.co.uk/software/pyqt/download](http://www.riverbankcomputing.co.uk/software/pyqt/download) -* Download and install numpy from [http://www.scipy.org/scipylib/download.html](http://www.scipy.org/scipylib/download.html). There is an installer available, make sure to get the one for Python 3.4 -* Download and install Pillow from [https://pypi.python.org/pypi/Pillow/3.3.0](https://pypi.python.org/pypi/Pillow/3.3.0) -* Download and install ffmpeg from [https://www.ffmpeg.org/download.html](https://www.ffmpeg.org/download.html). You can use the static builds. -* Add ffmpeg to your system PATH environment variable. +## Commandline snippets +* Create a simple visualization: `avp -c 0 classic -i something.mp3 -o output.mp4` +* Create the same visualization but with split layout and more extreme fluctuations: `avp -c 0 classic layout=split scale=40 -i something.mp3 -o output.mp4` +* Create a template project named `template` with your typical visualizers and watermarks using the GUI, then add text to the top layer from commandline: `avp template -c 99 text "title=Episode 371" -i /this/weeks/audio.ogg -o out` + + +# Dependencies +* Python 3.10 +* FFmpeg 4.4.1 +* PyQt5 (Qt v5.15.3) +* Pillow +* NumPy +* Pytest -Download audio-visualizer-python from this repository and run it from the command line with `C:\Python34\python.exe main.py`. -### Manual installation on macOS +# Installation +## Manual installation on Ubuntu 22.04 +* Install ffmpeg: `sudo apt install ffmpeg` +* Install pip: `sudo apt install python3-pip` +* Install PyQt5: `sudo apt install python3-pyqt5` +* Download this repo and run `pip install .` in this directory +* Run the program with `python3 -m avp` + + +## Manual installation on Windows +* Install Python from the Windows Store +* Add Python to your system PATH (it should ask during the installation process) +* Download this repo +* Open command prompt, `cd` into the repo directory, and run: `pip install .` +* Download and install ffmpeg from [https://www.ffmpeg.org/download.html](https://www.ffmpeg.org/download.html). You can use the static builds. +* Add ffmpeg to the system PATH as well, or copy ffmpeg.exe into the directory with the rest of the app +* Now run `python3 -m avp` from a command prompt window to start the app + +## Manual installation on macOS +* **[Outdated]**: No one has updated these instructions for a while. * Install [Homebrew](http://brew.sh/) * Use the following commands to install the needed dependencies: - ``` brew install python3 brew install ffmpeg --with-fdk-aac --with-ffplay --with-freetype --with-libass --with-libquvi --with-libvorbis --with-libvpx --with-opus --with-x265 @@ -48,14 +63,39 @@ pip3 install --upgrade pip pip3 install pillow pip3 install numpy ``` - Download audio-visualizer-python from this repository and run it with `python3 main.py`. -Example -------- -You can find an example video here: -[Youtube: A day in spring](https://www.youtube.com/watch?v=-M3jR1NuJHM) -License -------- -audio-visualizer-python is licensed under the MIT license. +# Faster Export Times +* [Pillow-SIMD](https://github.com/uploadcare/pillow-simd) may be used as a drop-in replacement for Pillow if you desire faster video export times, but it must be compiled from source. For help installing dependencies to compile Pillow-SIMD, see the [Pillow installation guide](http://pillow.readthedocs.io/en/3.1.x/installation.html). +* **Warning:** [Compiling from source is difficult on Windows](http://pillow.readthedocs.io/en/3.1.x/installation.html#building-on-windows). + + +# Keyboard Shortcuts +| Key Combo | Effect | +| ------------------------- | -------------------------------------------------- | +| Ctrl+S | Save Current Project | +| Ctrl+A | Save Project As... | +| Ctrl+O | Open Project | +| Ctrl+N | New Project (prompts to save current project) | +| Ctrl+Z | Undo | +| Ctrl+Shift+Z _or_ Ctrl+Y | Redo | +| Ctrl+T _or_ Insert | Add Component | +| Ctrl+R _or_ Delete | Remove Component | +| Ctrl+Space | Focus Component List | +| Ctrl+Shift+S | Save Component Preset | +| Ctrl+Shift+C | Remove Preset from Component | +| Ctrl+Up | Move Selected Component Up | +| Ctrl+Down | Move Selected Component Down | +| Ctrl+Home | Move Selected Component to Top | +| Ctrl+End | Move Selected Component to Bottom | +| Ctrl+Shift+U | Open Undo History | +| Ctrl+Shift+F | Show FFmpeg Command | +| Ctrl+Alt+Shift+R | Force redraw preview (must use `--debug`) | +| Ctrl+Alt+Shift+A | Dump MainWindow data into log (must use `--debug`) | + + +# License +Source code of audio-visualizer-python is licensed under the MIT license. + +Some dependencies of this application are under the GPL license. When packaged with these dependencies, audio-visualizer-python may also be under the terms of this GPL license.
\ No newline at end of file |
