MPV: Difference between revisions
imported>Doronbehar Add instructions for launching mpv with scripts |
Phanirithvij (talk | contribs) m link to search.nixos.org, home-manager-options.extranix.com which is also foss |
||
(18 intermediate revisions by 10 users not shown) | |||
Line 1: | Line 1: | ||
[https://mpv.io/ MPV] is an open-source command line media player. | |||
== Installation == | |||
==== With nix-shell ==== | |||
<syntaxhighlight lang="bash" start="3"> | |||
nix-shell -p mpv | |||
</syntaxhighlight> | |||
==== With NixOS ==== | |||
<syntaxhighlight lang="text"> | |||
environment.systemPackages = [ | |||
pkgs.mpv | |||
]; | |||
</syntaxhighlight> | |||
==== With Home Manager ==== | |||
<syntaxhighlight lang="text"> | |||
home.packages = [ | |||
pkgs.mpv | |||
]; | |||
</syntaxhighlight> | |||
== Configuration == | |||
=== With Home Manager === | |||
==== Basic ==== | |||
<syntaxhighlight lang="nix"> | |||
programs.mpv.enable = true; | |||
</syntaxhighlight> | |||
==== Advanced ==== | |||
<syntaxhighlight lang="nix"> | <syntaxhighlight lang="nix"> | ||
{ | programs.mpv = { | ||
enable = true; | |||
scripts = [pkgs. | package = ( | ||
}; | pkgs.mpv-unwrapped.wrapper { | ||
scripts = with pkgs.mpvScripts; [ | |||
uosc | |||
sponsorblock | |||
]; | |||
mpv = pkgs.mpv-unwrapped.override { | |||
waylandSupport = true; | |||
}; | |||
} | |||
); | |||
config = { | |||
profile = "high-quality"; | |||
ytdl-format = "bestvideo+bestaudio"; | |||
cache-default = 4000000; | |||
}; | }; | ||
} | }; | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== Tips and Tricks == | |||
[https://github.com/NixOS/nixpkgs/tree/master/pkgs/applications/video/mpv/scripts | ==== Where to get scripts ==== | ||
To find more scripts run this in a terminal: <syntaxhighlight lang="bash"> | |||
nix search nixpkgs mpvScripts | |||
</syntaxhighlight>The scripts are also defined in the following [https://github.com/NixOS/nixpkgs/tree/master/pkgs/applications/video/mpv/scripts Nixpkgs directory]. | |||
==== Where to find override options ==== | |||
The package override options are defined in the following [https://github.com/NixOS/nixpkgs/blob/master/pkgs/applications/video/mpv/default.nix Nixpkgs directory]. | |||
== Troubleshooting == | |||
==== Error, unknown format ==== | |||
If you get the following sort of error, note that MPV currently uses the small ffmpeg version (ffmpeg_5) instead of the full version (ffmpeg_5-full). | |||
<syntaxhighlight lang="shell"> | |||
$ mpv --log-file=foo.log av://v4l2:/dev/video5 | |||
[lavf] Unknown lavf format v4l2 | |||
Failed to recognize file format. | |||
Exiting... (Errors when loading file) | |||
</syntaxhighlight> | |||
To address this problem, you can use the following package configuration for ffmpeg. | |||
<syntaxhighlight lang="nix"> | <syntaxhighlight lang="nix"> | ||
{ | programs.mpv = { | ||
enable = true; | |||
mpv- | |||
package = ( | |||
} | pkgs.mpv-unwrapped.wrapper { | ||
mpv = pkgs.mpv-unwrapped.override { | |||
} | ffmpeg = pkgs.ffmpeg-full; | ||
}; | |||
} | |||
); | |||
}; | |||
</syntaxhighlight> | </syntaxhighlight> | ||
== | == References == | ||
# https://github.com/mpv-player/mpv/wiki | |||
# https://en.wikipedia.org/wiki/Mpv_(media_player) | |||
# https://search.nixos.org/packages?query=mpv | |||
# https://home-manager-options.extranix.com/?query=mpv | |||
[[Category:Applications]] | |||
[[Category:CLI Applications]] | |||
[[Category:Media Player]] |