Giter VIP home page Giter VIP logo

playx's Introduction

Search and play any song from terminal.

playx in action

GIF

playx

  1. Philosophy
  2. Requirements
  3. Installation
  4. Features
  5. Usage
  6. Example
  7. Contribution
  8. TO-DO
  9. Acknowledgements

Philosophy

Play any songs that come in your mind.

Hoping to make it an awesome music assistant


Requirements/Dependencies

  1. Python3.x

  2. pip3

  3. MPV

Note: These dependencies in linux can be installed in other variants.
For arch linux, you can use pacman package manager accordingly.


Installation

  • Run the following command in the root directory to install playx.
pip install -e .
  • Or install using setup.py as:
python setup.py install

Features

  • play by query
  • play by youtube url
  • play a youtube playlist
  • play from local playlist
  • cache support
  • CLI using mpv

Usage

For now, the application is in development phase.

usage: playx [-h] [-p] [-n] [-d] [-l] [song [song ...]]

playx - Search and play any song that comes to your mind. If you have any
issues, raise an issue in the github (https://github.com/NISH1001/playx) page

positional arguments:
  song                  Name or youtube link of song to download

optional arguments:
  -h, --help            show this help message and exit
  -p, --play-cache      Play all songs from the cache.
  -n, --no-cache        Don't download the song for later use.
  -d, --dont-cache-search
                        Don't search the song in the cache.
  -l, --lyrics          Show lyircs of the song.
  --pl-start PL_START   Start position in case a playlist is passed. If passed
                        without a playlist it has no effect.
  --pl-end PL_END       End position in case a playlist is passed. If passed
                        without a playlist it has no effect.

Example

Play by song name

playx man sold world nirvana

This plays the song titled "The man who sold the world by Nirvana"

Play by youtube link

playx https://www.youtube.com/watch?v=4zLfCnGVeL4

This plays the song The Sound of Silence.

Play from youtube playlist

playx https://www.youtube.com/playlist?list=PLwg22VSCR0W6cwuCKUJSkX72xEvYXS0Zx

This plays the songs from my personal (and public) playlist named Chilld and Wisdom.

Play from local playlist

The local playlist should have an extension .playx in order for us to recognize it as a playlist.

playx example.playx

This plays a playlist named example.playx

For a playlist every line is considered an entry. Refer to example.playx.


Contributions

Contributions are warmly welcome. Please do go through CONTRIBUTING.


TO-DO

  • caching of downloaded songs (if the song exists locally, play it right away else play from youtube)
  • speed up the whole search->download->convert->play process
  • stream/play while downloading the song
  • play all the songs from the cache
  • search lyrics
  • play from youtube playlist
  • play from local playlist (may be a list of song names)
  • log activity
  • use logs to create simple recommendations

Acknowledgements

  • Thanks to Deepjyoti Barman for parallelizing streaming + downloading (and other improvements)
  • Thanks to Mirza Zulfan for logo for playx. It's neat (and cool)

playx's People

Contributors

nish1001 avatar deepjyoti30 avatar mattwmaster58 avatar mirzazulfan avatar

Stargazers

 avatar

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.