Skip to main content

RK's CLI Music Player

Project description

RK Music Streamer

A command-line music streamer that allows you to stream songs, albums, playlists.
@Powered by Jio Saavn Web APIs


Prerequisites

  • Python 3.9.x or above.
  • VLC player must be installed.
    This application uses the VLC player for streaming and python-vlc bindings for interaction with libvlc library.
    (Install from VLC)

Dependencies


Installation

> python3 -m pip install rkstreamer
$ pip/pip3 install rkstreamer

Launch

Application can be launched by entering the following in the command prompt/terminal:

> python3 -m rkstreamer
or
> rkstreamer


Features

  • Has 3 main modes - Song, Album, Playlist.

  • Main modes can be activated/toggled using the '--' switches:

    • --song - Song Mode.
    • --album - Album Mode.
    • --plist - Playlist Mode.
  • Default mode is 'Song Search' Mode.

  • Has 2 Queue modes and 1 Misc mode which can be activated using '-' switches:

    • -q - displays Songs Queue.
    • -r - displays Recommended Songs Queue.
    • -g - displays Go-to-Album Songs.
  • Supports search parameters for Songs, Albums Mode.

    • Format: 'search string' -n:number -l:language -b:bitrate
  • Has 3 Action Modes:

    • a(index) - Add Media.
    • p(index) - Play Media.
    • r(index) - Remove Media. Index - Index shown in the queue/search output.
  • Above action modes can be combined with Queue and Misc modes for managing the media - See Controls section for more details.


Controls

-c - Player control mode.
Actions should be suffixed with the '-c' switch:

  • Player controls:

    • -cp - play/pause.
    • -cs - stop.
    • -cn - next song.
    • -cpr - previous song.
    • -clo - list output devices.
    • -cco(index) - change output to device (index - shown by list output devices command).
  • Volume controls:

    • -cv - displays Current volume.
    • -cv(number) - sets the volume.
    • -c+(number) - Volume Increase.
    • -c-(number) - Volume Decrease.
      Number - value to set.
  • Playback controls:

    • -c>(seconds) - seek forward.
    • -c<(seconds) - seek backward.
    • -ct - show remaining time.

-q - Song Queue mode.
Actions should be suffixed with the '-q' switch:

  • -qa(index) - Adds the song to queue.
  • -qr(index) - Removes the song from queue.
  • -qp(index) - Plays the song from queue.

-r - Recommended Songs Queue mode.
Actions should be suffixed with the '-r' switch:

  • -ra(index) - Adds the song to queue.
  • -rr(index) - Removes the song from queue.
  • -rp(index) - Plays the song from queue.

-g - Go-to-Album Songs list.
Actions should be suffixed with the '-g' switch:

  • -ga(index) - Adds the album song to song queue.
  • -gp(index) - Plays the album song.

Examples

Song Mode:
(--song)

> Enter the song name: song1 -n:5 -l:tamil -b:320
(-n, -l, -b are optional)

Legends:
(
    Search string - song1,
    Number of results to display - 5,
    Language - tamil,
    Bitrate - 320kpbs
)

1 - Play the 1st song from search output.


Album Mode:
(--album)

> Enter the album name: album1 -n:5 -l:tamil

(-n, -l are optional)

Legends:
(
    Search string - album1,
    Number of results to display - 5,
    Language - tamil
)

- Album can be selected using the index number.
- Song in the albums can be played using a(index).

1 - Select the 1st album from search list.
a1 - Play the album's 1st song.


Playlist Mode:
(--plist)

> Enter the playlist name: playlist1 -l:tamil -n:5
(-n, -l are optional)

Legends:
(
    Search string - playlist1,
    Number of results to display - 5,
    Language - tamil
)

1 - Play the 1st playlist displayed in search output.
-v(index) - View the playlist songs

***When a song is playing***

> Enter the song name: -q
(Displays the song queue)

> -r
(Displays the recommended song queue)

> -g
(Displays the playing song's album songs)

> -qr1 - removes the first index song from queue
> -qp1 - plays the first index song from queue
> -qa1 - adds the first index song from search list

Similar behaviors for -r (recommended songs), -g (go-to-album).


Volume Controls:
  -cv - Shows current volume
  -c+10 - Increase volume by 10
  -c-10 - Decrease volume by 10
  -cv100 - Set volume to 100

Playback controls:
  -c>10 - Forward by 10 seconds
  -c<10 - Backward by 10 seconds
  -ct - Show remaining time

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rkstreamer-1.2.3.tar.gz (29.0 kB view details)

Uploaded Source

Built Distribution

rkstreamer-1.2.3-py3-none-any.whl (39.0 kB view details)

Uploaded Python 3

File details

Details for the file rkstreamer-1.2.3.tar.gz.

File metadata

  • Download URL: rkstreamer-1.2.3.tar.gz
  • Upload date:
  • Size: 29.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.9

File hashes

Hashes for rkstreamer-1.2.3.tar.gz
Algorithm Hash digest
SHA256 7dbf0c87e6812bbe0a0f5d63bfa97af4a2549d130346b99e24ab9c6f494ce341
MD5 f945fe1ab8f06f2d3464cd977384ade6
BLAKE2b-256 6b43173a4cc920b38b800afd67dd89e9c0af9863d5abe470b9e6b7f6a841abcc

See more details on using hashes here.

File details

Details for the file rkstreamer-1.2.3-py3-none-any.whl.

File metadata

  • Download URL: rkstreamer-1.2.3-py3-none-any.whl
  • Upload date:
  • Size: 39.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.9

File hashes

Hashes for rkstreamer-1.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 472e8dce3ced9181776e7d1cda51e6c42f8260dd1cc176da964285ef9ba39b78
MD5 39bfb32b4ab90927265b1486476dbd20
BLAKE2b-256 8f742abe6f5c92be9dd537c86a8f95c41eced36b16d73c1d71553155e6deedf9

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page