1{
2 lib,
3 buildLua,
4 mpv-unwrapped,
5}:
6
7let
8 mkBuiltin =
9 name: args:
10 let
11 srcPath = "TOOLS/lua/${name}.lua";
12 in
13 buildLua (
14 lib.attrsets.recursiveUpdate rec {
15 inherit (mpv-unwrapped) src version;
16 pname = "mpv-${name}";
17
18 dontUnpack = true;
19 scriptPath = "${src}/${srcPath}";
20
21 meta = with lib; {
22 inherit (mpv-unwrapped.meta) license;
23 homepage = "https://github.com/mpv-player/mpv/blob/v${version}/${srcPath}";
24 };
25 } args
26 );
27in
28lib.recurseIntoAttrs (
29 lib.mapAttrs (name: lib.makeOverridable (mkBuiltin name)) {
30 acompressor.meta = {
31 description = "Script to toggle and control ffmpeg's dynamic range compression filter";
32 maintainers = with lib.maintainers; [ nicoo ];
33 };
34
35 autocrop.meta.description = "This script uses the lavfi cropdetect filter to automatically insert a crop filter with appropriate parameters for the currently playing video";
36
37 autodeint.meta.description = "This script uses the lavfi idet filter to automatically insert the appropriate deinterlacing filter based on a short section of the currently playing video";
38
39 autoload.meta = {
40 description = "This script automatically loads playlist entries before and after the currently played file";
41 maintainers = [ lib.maintainers.dawidsowa ];
42 };
43 }
44)