summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortassaron2026-01-13 22:38:51 -0500
committertassaron2026-01-13 22:38:51 -0500
commitdbf431ff72a133aa8c197f0c4a7fb54a7a483244 (patch)
tree95da7dffe18f2d34d48167f557637f10c322babb
parent50f5a76603a3f97f2c6f6a1d3cefea88ed3497aa (diff)
update readme: recommend pipx and uv + change headers
-rw-r--r--README.md53
1 files changed, 34 insertions, 19 deletions
diff --git a/README.md b/README.md
index 8d1108b..2d75688 100644
--- a/README.md
+++ b/README.md
@@ -6,29 +6,44 @@ This is a little GUI tool which creates an audio visualization video from an inp
6 6
7The 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](https://github.com/djfun/audio-visualizer-python/issues) on this project. 7The 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](https://github.com/djfun/audio-visualizer-python/issues) on this project.
8 8
9# Screenshots & Videos 9## Screenshots & Videos
10 10
11[<img title="AVP running on Windows" alt="Screenshot of program on Windows" src="screenshot.png" width="707">](/screenshot.png?raw=true) 11[<img title="AVP running on Windows" alt="Screenshot of program on Windows" src="screenshot.png" width="707">](/screenshot.png?raw=true)
12 12
13## A video created by this app 13### A video created by this app
14 14
15- **[YouTube: A day in spring](https://www.youtube.com/watch?v=-M3jR1NuJHM)** 🎥 15- **[YouTube: A day in spring](https://www.youtube.com/watch?v=-M3jR1NuJHM)** 🎥
16 16
17## Video demonstration of the app features 17### Video demonstration of the app features
18 18
19- [YouTube: Audio Visualizer Python v2.0.0 demonstration](https://www.youtube.com/watch?v=EVt2ckQs1Yg) 🎥 19- [YouTube: Audio Visualizer Python v2.0.0 demonstration](https://www.youtube.com/watch?v=EVt2ckQs1Yg) 🎥
20 20
21# Installation 21## Installation on Linux
22 22
23## Installation on Ubuntu 24.04 23### System dependencies
24 24
25- Install system dependencies: `sudo apt install ffmpeg` 25- Install FFmpeg:
26 - On Ubuntu: `sudo apt install ffmpeg`
27 - On Arch: `sudo pacman -S ffmpeg`
28
29### Using pipx
30
31- **This is a good method if you just want to use the program**
32- Install `pipx` tool if you don't have it:
33 - On Ubuntu: `sudo apt install python-pipx`
34 - On Arch: `sudo pacman -S python-pipx`
35- Install this program: `pipx install git+https://github.com/djfun/audio-visualizer-python`
36- Run this program with `avp` or `python -m avp` from terminal
37
38### Using a Python virtual environment
39
40- **This is a good method if you want to edit the code**
26- Make a virtual environment: `python -m venv env` 41- Make a virtual environment: `python -m venv env`
27- Activate it: `source env/bin/activate` 42- Activate it: `source env/bin/activate`
28- Install Python dependencies: `pip install uv` 43- Install uv: `pip install uv`
29- Install this program: `uv sync` in this directory 44- Install this program by running `uv sync` in this directory
30- Run the program with `python -m avp` from terminal 45- Run program with `avp` or `python -m avp` or `uv run avp`
31- Optional: Unit tests can be run with `uv run pytest` 46- Optional: Tests can be run with `uv run pytest`
32 47
33## Installation on Windows 48## Installation on Windows
34 49
@@ -38,14 +53,14 @@ The program works on **Linux**, **macOS**, and **Windows**. If you encounter pro
38- Download and install [FFmpeg](https://www.ffmpeg.org/download.html). Use the GPL-licensed static builds. 53- Download and install [FFmpeg](https://www.ffmpeg.org/download.html). Use the GPL-licensed static builds.
39- Add FFmpeg to the system PATH as well (program will then work anywhere) 54- Add FFmpeg to the system PATH as well (program will then work anywhere)
40 - Alternatively, copy ffmpeg.exe into the folder that you want to run the program within 55 - Alternatively, copy ffmpeg.exe into the folder that you want to run the program within
41- Open command prompt, `cd` into the repo directory, and run: `pip install pyqt6 pillow numpy .` 56- Open command prompt, `cd` into the repo directory, and run: `pip install .`
42- Now run `avp` or `python -m avp` from a command prompt window to start the app 57- Now run `avp` or `python -m avp` from a command prompt window to start the app
43 58
44## Installation on macOS 59## Installation on macOS
45 60
46- We need help writing instructions for macOS, but the program should work in theory. 61- We need help writing instructions for macOS, but the program should work in theory.
47 62
48# [Keyboard Shortcuts](https://github.com/djfun/audio-visualizer-python/wiki/Keyboard-Shortcuts) 63## [Keyboard Shortcuts](https://github.com/djfun/audio-visualizer-python/wiki/Keyboard-Shortcuts)
49 64
50| Key Combo | Effect | 65| Key Combo | Effect |
51| ------------------------ | --------------------------------------------- | 66| ------------------------ | --------------------------------------------- |
@@ -67,19 +82,19 @@ The program works on **Linux**, **macOS**, and **Windows**. If you encounter pro
67| Ctrl+Shift+U | Open Undo History | 82| Ctrl+Shift+U | Open Undo History |
68| Ctrl+Shift+F | Show FFmpeg Command | 83| Ctrl+Shift+F | Show FFmpeg Command |
69 84
70# Commandline Mode 85## Using commandline interface
71 86
72Projects can be created with the GUI then loaded from the commandline for easy automation of video production. Some components have commandline options for extra customization, and you can save "presets" with settings to load if the commandline option doesn't exist. 87Projects can be created with the GUI then loaded from the commandline for easy automation of video production. Some components have commandline options for extra customization, and you can save "presets" with settings to load if the commandline option doesn't exist.
73 88
74## Example/test command 89### Example command
75 90
76- Create a video with a grey "classic visualizer", background image, and text: 91- Create a video with a grey "classic visualizer", background image, and text:
77 - `avp -c 0 image path=src/tests/data/test.jpg -c 1 classic color=180,180,180 -c 2 text "title=Episode 371" -i src/tests/data/test.ogg -o output.mp4` 92 - `avp -c 0 image path=src/tests/data/test.jpg -c 1 classic color=180,180,180 -c 2 text "title=Episode 371" -i src/tests/data/test.ogg -o output.mp4`
78- [See more about commandline mode in the wiki!](https://github.com/djfun/audio-visualizer-python/wiki/Commandline-Mode) 93- [See more about commandline mode in the wiki!](https://github.com/djfun/audio-visualizer-python/wiki/Commandline-Mode)
79 94
80# Developer Information 95## Developer Information
81 96
82## Known Working Versions of Dependencies 97### Dependencies
83 98
84- Python 3.13 99- Python 3.13
85- FFmpeg 4.4.1 - 8.0.1 100- FFmpeg 4.4.1 - 8.0.1
@@ -87,16 +102,16 @@ Projects can be created with the GUI then loaded from the commandline for easy a
87- Pillow 12.1.0 102- Pillow 12.1.0
88- NumPy 2.4.1 103- NumPy 2.4.1
89 104
90## Getting Faster Export Times 105### Getting Faster Export Times
91 106
92- [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](https://pillow.readthedocs.io/en/stable/installation/building-from-source.html). 107- [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](https://pillow.readthedocs.io/en/stable/installation/building-from-source.html).
93 108
94## Developing a New Component 109### Developing a New Component
95 110
96- Information for developing a component is in our wiki: [How a Component Works](https://github.com/djfun/audio-visualizer-python/wiki/How-a-Component-Works) 111- Information for developing a component is in our wiki: [How a Component Works](https://github.com/djfun/audio-visualizer-python/wiki/How-a-Component-Works)
97- File an issue on GitHub if you need help fitting your visualizer into our component system; we would be happy to collaborate 112- File an issue on GitHub if you need help fitting your visualizer into our component system; we would be happy to collaborate
98 113
99# License 114## License
100 115
101Source code of audio-visualizer-python is licensed under the MIT license. 116Source code of audio-visualizer-python is licensed under the MIT license.
102 117