Curses Omni Media Player https://pypi.org/project/comp/
Go to file
Nguyễn Gia Phong c224c24b84 Add Youtube playlist argument, seek function and patial support for translation using gettext 2017-04-05 11:39:04 +07:00
locale/vi_VN/LC_MESSAGES Add Youtube playlist argument, seek function and patial support for translation using gettext 2017-04-05 11:39:04 +07:00
.gitignore Update documentation and setup 2017-04-04 11:37:29 +07:00
LICENSE Initial commit 2014-08-10 23:27:26 +02:00
MANIFEST.in Update documentation and setup 2017-04-04 11:37:29 +07:00
README.rst Add Youtube playlist argument, seek function and patial support for translation using gettext 2017-04-05 11:39:04 +07:00
comp Add Youtube playlist argument, seek function and patial support for translation using gettext 2017-04-05 11:39:04 +07:00
mpv.py Simplify initialization logic somewhat 2017-01-06 14:41:46 +01:00
settings.ini Add Youtube playlist argument, seek function and patial support for translation using gettext 2017-04-05 11:39:04 +07:00
setup.py Add Youtube playlist argument, seek function and patial support for translation using gettext 2017-04-05 11:39:04 +07:00
test.json Add Youtube playlist argument, seek function and patial support for translation using gettext 2017-04-05 11:39:04 +07:00

README.rst

=================================
comp - Curses Online Media Player
=================================

This program is a curses front-end for mpv and youtube-dl.

Installation
------------

Dependencies
^^^^^^^^^^^^

This program currently only runs on Python 3.5+ on operating systems that the
``curses`` module is supported (i.e. Unix-like OS, e.g. GNU/Linux, macOS and
the BSDs).

It also depends on ``youtube-dl`` and ``libmpv``. Both of those should be
available in your operating system's repository. 

Installing comp
^^^^^^^^^^^^^^^

I will try to upload the program to PyPI when it's more completed but as of
this moment, I'd suggest you to use ``git`` to get the software::

   git clone https://github.com/McSinyx/comp.git
   cd comp
   sudo ./setup.py install --user

Usage
-----

::

   $ comp --help
   usage: comp [-h] [-j JSON_PLAYLIST]
   
   Curses Online Media Player
   
   optional arguments:
     -h, --help            show this help message and exit
     -j JSON_PLAYLIST, --json-playlist JSON_PLAYLIST
                           path to playlist in JSON format
     -y YOUTUBE_PLAYLIST, --youtube-playlist YOUTUBE_PLAYLIST
                        URL to an playlist on Youtube

Keyboard control
^^^^^^^^^^^^^^^^

+--------------+-------------------------------+
|     Key      |            Action             |
+==============+===============================+
| ``h``, Up    | Move a single line up         |
+--------------+-------------------------------+
| ``j``, Down  | Move a single line down       |
+--------------+-------------------------------+
| Page Up      | Move a single page up         |
+--------------+-------------------------------+
| Page Down    | Move a single page down       |
+--------------+-------------------------------+
| Home         | Move to the begin of the list |
+--------------+-------------------------------+
| End          | Move to the end of the list   |
+--------------+-------------------------------+
| Left         | Seek backward 5 seconds       |
+--------------+-------------------------------+
| Right        | Seek forward 5 seconds        |
+--------------+-------------------------------+
| ``c``        | Select the current track      |
+--------------+-------------------------------+
| ``p``        | Start playing                 |
+--------------+-------------------------------+
| Space        | Toggle pause                  |
+--------------+-------------------------------+
| ``m``, ``M`` | Cycle through playing modes   |
+--------------+-------------------------------+
| ``A``        | Toggle mute                   |
+--------------+-------------------------------+
| ``V``        | Toggle video                  |
+--------------+-------------------------------+

Configuration files
-------------------

The system-wide configuration file is ``/etc/comp/settings.ini``, the
user-specific one is  ``~/.config/mpv/settings.ini``. Default configurations
are listed below::

   [comp]
   # Supported 8 modes: play-current, play-all, play-selected, repeat-current,
   # repeat-all, repeat-selected, shuffle-all and shuffle-selected.
   play-mode = play-current
   
   [mpv]
   # Set if video should be download and play, I only know 2 possible values:
   # auto and no. This can be changed later interactively.
   video = auto
   # Read more on VIDEO OUTPUT DRIVERS section in mpv man page.
   video-output =
   
   [youtube-dl]
   # Read more on FORMAT SELECTION section in youtube-dl man page.
   format = best