Skip to content

abdipr/pyrics

Repository files navigation

Pyrics Logo

Pyrics

Python Lyrics Player

Download pyrics.exe

Stars Forks Python Version License MIT PRs Welcome

A minimalistic, modern, and monochrome floating desktop lyrics visualizer built in Python with PyQt6. Designed as an artistic desktop installation rather than a traditional media player, Pyrics parses synchronized TTML subtitle files and floats lyrics upward across the screen in dynamic, frameless 4:3 aspect ratio panels.


📋 Table of Contents


✨ Key Features

  • Word-by-word Highlight (Position-Preserving): Words emerge incrementally inside a 4:3 aligned panel. Future words remain colored to match the background to guarantee the visible text stays centered without shifts.
  • Alternating Floating Layout: Successive lyric lines spawn alternately on the left and right sides of your desktop screens with organic offsets to avoid robotic repetition.
  • Smart Overlap Stacking: A collision-preventing physics velocity calculator adjusts spawn positions dynamically, ensuring overlapping fast-paced lines never collide.
  • Contrast Themes & Custom Colors: Supports a solid black theme, a white inverted theme, a random mix theme, or customizable text and background colors via hex inputs and color pickers.
  • Timeline Engine & Seek Controls: Play, pause, stop, seek (slider scrubbing), and adjust playback speed scales (0.5x, 1.0x, 1.25x, 1.5x, 2.0x).
  • Import/Export Config: Save your typography, side margins, colors, and speeds to a JSON file and import them back at any time.

🚀 Installation & Setup

Prerequisites

Make sure you have Python 3.11 or newer installed.

1. Clone the Repository

git clone https://github.com/abdipr/pyrics.git
cd pyrics

2. Install Dependencies

Install PyQt6:

pip install PyQt6

3. Run the Application

Start the lyrics controller:

python main.py

📦 Bundling to Standalone Executable (.exe)

You can easily compile Pyrics into a single portable .exe binary for Windows.

Double-click the build.bat script in the project root folder. It will:

  1. Automatically install PyInstaller.
  2. Compile and package the application files.
  3. Bundle assets (favicon and fonts).
  4. Generate the executable at dist/main.exe.

🌱 Contributing

Contributions are welcome! To contribute:

  1. Fork the repository.
  2. Create a feature branch: git checkout -b feature-name.
  3. Commit your changes: git commit -m 'Add feature'.
  4. Push to the branch: git push origin feature-name.
  5. Submit a pull request.

✨ Support

If you like this project, please star on this repository, thank you ⭐
You can support me by:
Trakteer Saya Buy Me A Coffee


⚖️ License

This project is licensed under the MIT License. See the LICENSE file for more information.

About

Pyrics — Python Lyrics Player | A minimalistic, modern, and monochrome floating desktop lyrics visualizer built in Python with PyQt6. Synchronized TTML subtitle files and floats lyrics upward across the screen in dynamic panel.

Topics

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Contributors