Skip to content

Discord Rich Presence integration for mpv Media Player - Fork with improved displayed status information

License

Notifications You must be signed in to change notification settings

Fadexz/mpv-discordRPC-improvedstatus

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This modification of mpv-discordRPC provides a large modification of the status information displayed to display more useful information.


Previews

Type Image
Playing (Profile) Playing Profile
Playing (Pop Out) Playing Pop Out
Paused Paused
Audio Only Audio Only
Playing (Pop Out) (With Theme and GIF Image) Playing Profile

Installation

  • Simply place the 'status-line.lua' file and 'mpv-discordRPC' folder inside your 'scripts' folder (Windows: e.g %SystemDrive%\Users\%Username%\AppData\Roaming\mpv\scripts)
  • Place 'discord-rpc.dll' and/or other libraries inside the mpv executable (e.g with 'mpv.exe') folder (Windows: e.g %SystemDrive%\Program Files\mpv)
  • Optional: Place the 'mpv_discordRPC.conf' inside your 'script-opts' folder (Windows: e.g %SystemDrive%\Users\%Username%\AppData\Roaming\mpv\script-opts)

Note: You will not need the any other files for it to function

Usage

  • Run 'mpv.exe' or a shortcut to it, wait after a short delay and mpv should display as a playing game activity (as long as it hasn't been disabled to display in the Discord settings)
  • Use 'D' key (or e.g hold 'SHIFT' and press 'D') to toggle the apperance of the RPC in Discord
  • Optional: Add cover art (including metadata) inside scripts/mpv-discordRPC/catalogs.lua

Note: When ProRes video is detected ffprobe will attempt to run (opens a command-line window) to gather which type of ProRes codec it is, make sure your ffmepg folder is in the enviromental variables in Windows for it to find it.

Optional

BetterDiscord Theme (for Discord) for multi-line status, larger images, and rounded corners if you are interested https://github.com/Fadexz/EnhancedActivity‍


‍ ‍

Discord Rich Presence intergation for mpv Media Player


This is alternative version, edited from mpv-discordRPC. I add metadata tags (Title, Artist and Album) support for 'details' and I use status-line for 'state'. I use 'elapsed' time mode when idle, while when playing, paused, and buffering use 'left' time mode. I add support and installer script for Linux, Mac and Windows. I also add custom configuration file and new features: info, cover art, url detections, and active/inactive toggle.

For more description read below.


Previews

Description Image
Idle Idle
Playing Playing
Paused Paused
Info: playlist and loop Info: playlist and loop
Cover art Cover art
YouTube playing YouTube playing
Crunchyroll paused Crunchyroll paused
SoundCloud playing SoundCloud playing
LISTEN.moe paused LISTEN.moe paused

Used softwares

  1. Provided by user: mpv, Discord
  2. Included: Discord RPC, status-line, lua-discordRPC
  3. Optional: Python, pypresence

Downloads

  • Latest Releases download
  • All Releases download

Installation

  1. For Linux, installing just run install-linux.sh on terminal.
  2. For Windows, installing just run install-win.bat by double-clicking it.
  3. For Mac, installing just run install-osx.sh on terminal.

Settings

Just edit mpv_discordRPC.conf file in script-opts folder. Now Available 2 rpc_wrapper option, choose one. Example:

  • Configuration (A) rpc_wrapper and periodic_timer

    rpc_wrapper=lua-discordRPC
    periodic_timer=1
    
  • Configuration (B) rpc_wrapper and periodic_timer

    rpc_wrapper=python-pypresence
    periodic_timer=3
    

Setting to show playlist info and loop info. Example:

  • Configuration playlist_info and loop_info

    playlist_info=yes
    loop_info=yes
    

Setting to show cover art. Example:

  • Configuration cover_art

    cover_art=yes
    

Setting to active/inactive toggle the Discord RPC and the start states. Example:

  • Configuration active and key_toggle

    active=yes
    key_toggle=D
    

To use rpc_wrapper=lua-discordRPC, Important LuaJIT on mpv

Check LuaJIT, because it has FFI Library and it needed by lua-discordRPC.

  1. For Linux

    • Make sure your mpv binary linked to luajit~~ not lua~~ library.

      ldd $(which mpv) | grep luajit
      libluajit-5.1.so.2 => /usr/lib/x86_64-linux-gnu/libluajit-5.1.so.2 (0x00007f32e9a83000)
    • If it's dynamic build while it's static build you can check with

      mpv -v -V | sed -rn 's/.*(luajit).*/\1/p'
      luajit
  2. For Windows (Don't worry)

    • You can skip this because available mpv Windows build by lachs0r and shinchiro already use LuaJIT and it static build which configured with --enable-static-build.
  3. For Mac (So sad)

    • Until now, LuaJIT still have problem on Mac OS X. Also build mpv with LuaJIT on Mac OS X (read mpv issue #1110), it maybe can build successfully but still can't load LuaJIT properly when run mpv (read mpv issue #5205). You can check with otool command.

To use rpc_wrapper=python-pypresence, Important to install pypresence

Support Mac, Windows, and Linux because can use with Lua or LuaJIT.

  1. Install Python >=3.5 because this version has asyncio library which needed by pypresence.
  2. Install pypresence pip install pypresence or pip install https://github.com/qwertyquerty/pypresence/archive/master.zip use pip3 instead of pip if Python 2 still installed on your old machine.

You may want to check again, run command mpv -v -V and find luajit or lua word on the line which beginning with [cplayer] List of enabled features: for Mac, Windows or Linux.


Testing

  1. Open your Discord then,
  2. Open your mpv then,
  3. Back to Discord and then check your profile.

Good Luck and have a nice day.

Feedback: If you have question, problem or request, please make new issue or contact me wachidadinugroho#7674 via Discord.

About

Discord Rich Presence integration for mpv Media Player - Fork with improved displayed status information

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Lua 99.0%
  • Python 1.0%