btrbk: add mainProgram (#356350)
[NixPkgs.git] / pkgs / by-name / li / libvmaf / package.nix
blob9e692fc5805eb9bd3394776297d1af8a215b8b84
1 { lib
2 , stdenv
3 , fetchFromGitHub
4 , ffmpeg-full
5 , libaom
6 , meson
7 , nasm
8 , ninja
9 , testers
10 , xxd
13 stdenv.mkDerivation (finalAttrs: {
14   pname = "libvmaf";
15   version = "3.0.0";
17   src = fetchFromGitHub {
18     owner = "netflix";
19     repo = "vmaf";
20     rev = "v${finalAttrs.version}";
21     sha256 = "sha256-6mwU2so1YM2pyWkJbDHVl443GgWtQazbBv3gTMBq5NA=";
22   };
24   sourceRoot = "${finalAttrs.src.name}/libvmaf";
26   nativeBuildInputs = [ meson ninja nasm xxd ];
28   mesonFlags = [ "-Denable_avx512=true" ];
30   outputs = [ "out" "dev" ];
31   doCheck = false;
33   passthru.tests = {
34     inherit libaom ffmpeg-full;
35     version = testers.testVersion {
36       package = finalAttrs.finalPackage;
37     };
38     pkg-config = testers.hasPkgConfigModules {
39       package = finalAttrs.finalPackage;
40       moduleNames = [ "libvmaf" ];
41     };
42   };
44   meta = with lib; {
45     description = "Perceptual video quality assessment based on multi-method fusion (VMAF)";
46     homepage = "https://github.com/Netflix/vmaf";
47     changelog = "https://github.com/Netflix/vmaf/blob/v${finalAttrs.version}/CHANGELOG.md";
48     license = licenses.bsd2Patent;
49     maintainers = [ maintainers.cfsmp3 ];
50     mainProgram = "vmaf";
51     platforms = platforms.unix;
52   };