_ _ | | | | _ _ _____ _| |_ _ _| |__ ___ | | | |/ _ \ \ /\ / / __| | | | '_ \ / _ \ | |_| | __/\ V V /| |_| |_| | |_) | __/ \__, |\___| \_/\_/ \__|\__,_|_.__/ \___| __/ | |___/
Terminal based YouTube player and downloader. No Youtube API key required. Forked from mps-youtube
- Install using
pip install yewtube
- Run using,
yt
. Enjoy!
- Install pipx using
pip install pipx
- Install
yewtube
usingpipx install yewtube
- Now, type
yt
That's it.
- Install using
pip install git+https://github.com/iamtalhaasghar/yewtube.git
- Run using,
yt
. Enjoy!
- Install pipx using
pip install pipx
- Install
yewtube
usingpipx install git+https://github.com/iamtalhaasghar/yewtube.git
- Now, type
yt
That's it.
- No Youtube API Key required
- Run audio in VLC with no GUI
See complete and up-to-date changelog here.
These features are still inherited from mps-youtube.
- Search and play audio/video from YouTube
- Search tracks of albums by album title
- Search and import YouTube playlists
- Create and save local playlists
- Download audio/video
- Convert to mp3 & other formats (requires ffmpeg or avconv)
- View video comments
- Works with Python 3.x
- Works with Windows, Linux and Mac OS X
- Requires mplayer, mpv or VLC
This project is based on mps-youtube and mps-youtube is based on mps, a terminal based program to search, stream and download music. This implementation uses YouTube as a source of content and can play and download video as well as audio. The pafy library handles interfacing with YouTube.
A standard search is performed by entering /
followed by search terms.
You can play all of the search results by giving 1-
as input
Repeating song/songs can be done with song_number[loop]
, for example:
1[3]
or 4-6[2]
Search result items can easily be stored in local playlists.
YouTube playlists can be searched and played or saved as local playlists.
A playlist search is performed by //
followed by search term.
Content can be downloaded in various formats and resolutions.
A basic comments browser is available to view YouTube user comments.
Music Album Matching:
An album title can be specified and yewtube will attempt to find
matches for each track of the album, based on title and duration. Type
help search
for more info.
Customisation:
Search results can be customised to display additional fields and ordered by various criteria.
This configuration was set up using the following commands
set order views
set columns user:14 date comments rating likes dislikes category:9 views
Type help config
for help on configuration options
pipx upgrade yewtube
pip install --upgrade yewtube
yewtube is run on the command line using the command:
yt
Enter h
from within the program for help.
- Install PyGObject, GTK and their dependencies based on this guide https://pygobject.readthedocs.io/en/latest/getting_started.html
- Install yewtube with mpris extra
> # recommended
> pipx install 'yewtube[mpris]'
> # or
> pip install 'yewtube[mpris]'
- check yewtube version
> yt --version
yewtube version : 2.8.2
yt_dlp version : 2022.02.04
Python version : 3.9.7 (default, Nov 7 2021, 15:17:57)
[GCC 11.2.0]
Processor : x86_64
Machine type : x86_64
Architecture : 64bit, ELF
Platform : Linux-5.13.0-35-generic-x86_64-with-glibc2.34
sys.stdout.enc : utf-8
default enc : utf-8
Config dir : /home/user/.config/mps-youtube
dbus : 1.2.18
glib : True
env:TERM : tmux-256color
env:SHELL : /usr/bin/zsh
env:LANG : en_US.UTF-8
If everything working correctly, dbug and glib would have similar result as above text
- run
set mpris true
on yewtube - check with
playerctl
> playerctl -l
mps-youtube.instance567867
Check also the common-issue if you are having problem with yewtube.
Contributions are welcomed! However, please check out the contribution page before making a contribution.