Giter VIP home page Giter VIP logo

mprs's Introduction

music-player-rs

TODOs

  • clean up readme and add install instructions + demo pictures/videos (after visualizer is done)
  • Cap search results based on max_n_results or something in config.yaml
  • Validate user config options from config.yaml
  • Add edit command to edit song name and artist name
  • Add custom base_dir support from config.yaml
  • Switch to spotdl + SpotifyAPI for search
  • Display album name + album cover (and maybe lyrics) on play screen with spotdl
  • Add volume normalization
  • Add visualizer (RustFFT + Tokio + Rayon for async display and calculation of FFT)
  • Add seeking during audio playback
  • Switch to full TUI
  • Play audio through macos native AVFAudio + whatever windows/linux uses
  • System wide key capture for forward, back and play/pause keyboard buttons (may also be os specific)
  • Add move command to move song to another playlist
  • Add copy command to copy song to another playlist (perhaps as a subcommand of move)
  • Multithread yt-dlp search for faster results
  • Allow download of entire yt playlist
  • Allow download of tracks from a given link

mprs's People

Contributors

gursi26 avatar quiz3 avatar

Stargazers

 avatar  avatar

Watchers

 avatar

Forkers

quiz3

mprs's Issues

Add Dependencies

For yt-dlp and other dependencies, add an official dependency to go with the software install.

Improve Terminal-based UI

The user interface in the terminal is very cool-looking but could use some improvements, including the following:

  • Titles that get cut off should fill up their boxes if there is room
  • The table of songs should allow for at least two-line space for song titles, as it cuts off many YouTube titles, which tend to often be very long in order to get tagged in a bunch of potential searches.
  • The visualizer will be a nice addition when added.
  • The currently playing song should either appear at the top of the queue in a different format from the others or just not at all, since it is displayed in its own section and is technically no longer in the queue anyway.

Update remove.rs

Add to remove.rs to ensure removal of associated binary cache files when removing files.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.