diff --git a/modules/options/encoding.nix b/modules/options/encoding.nix index 9ed7146..d0e9bda 100644 --- a/modules/options/encoding.nix +++ b/modules/options/encoding.nix @@ -23,7 +23,7 @@ with lib; { description = "Boost audio when downmixing. A value of one will preserve the original volume."; }; DownMixStereoAlgorithm = mkOption { - type = types.oneOf ["None" "Dave750" "NightmodeDialogue" "RFC7845" "AC-4"]; + type = types.enum ["None" "Dave750" "NightmodeDialogue" "RFC7845" "AC-4"]; default = "None"; description = "Algorithm used to downmix multi-channel audio to stereo."; }; @@ -65,7 +65,7 @@ with lib; { }; HardwareAccelerationType = mkOption { - type = types.oneOf ["none" "qsv" "amf" "nvenc" "vaapi" "rkmpp" "videotoolbox" "v4l2m2m"]; + type = types.enum ["none" "qsv" "amf" "nvenc" "vaapi" "rkmpp" "videotoolbox" "v4l2m2m"]; description = '' Whether or not to use hardware acceleration for transcoding. @@ -103,7 +103,7 @@ with lib; { Currently works only with 10bit HDR10, HLG and DoVi videos. This requires the corresponding GPGPU runtime. ''; TonemappingAlgorithm = mkOption { - type = types.oneOf ["none" "bt2390" "clip" "linear" "gamma" "reinhard" "hable" "mobius"]; + type = types.enum ["none" "bt2390" "clip" "linear" "gamma" "reinhard" "hable" "mobius"]; description = '' Tone mapping can be fine-tuned. If you are not familiar with these options, just keep the default. @@ -111,7 +111,7 @@ with lib; { default = "bt2390"; }; TonemappingMode = mkOption { - type = types.oneOf ["auto" "max" "rgb" "lum" "itp"]; + type = types.enum ["auto" "max" "rgb" "lum" "itp"]; description = '' Select the tone mapping mode. If you experience blown out highlights try switching to the RGB mode. @@ -119,7 +119,7 @@ with lib; { default = "auto"; }; TonemappingRange = mkOption { - type = types.oneOf ["auto" "tv" "pc"]; + type = types.enum ["auto" "tv" "pc"]; description = '' Select the output color range. Auto is the same as the input range. ''; @@ -200,7 +200,7 @@ with lib; { }; EncoderPreset = mkOption { - type = types.oneOf [ + type = types.enum [ "auto" "veryslow" "slower" @@ -222,7 +222,7 @@ with lib; { This setting uses the field rate when deinterlacing, often referred to as bob deinterlacing, which doubles the frame rate of the video to provide full motion like what you would see when viewing interlaced video on a TV. ''; DeinterlaceMethod = mkOption { - type = types.oneOf ["yadif" "bwdif"]; + type = types.enum ["yadif" "bwdif"]; default = "yadif"; description = '' Select the deinterlacing method to use when software transcoding interlaced content. @@ -235,7 +235,7 @@ with lib; { EnableDecodingColorDepth10HevcRext = mkEnableOption "Enable hardware decoding for HEVC RExt 8/10bit"; EnableDecodingColorDepth12HevcRext = mkEnableOption "Enable hardware decoding for HEVC RExt 12bit"; HardwareDecodingCodecs = mkOption { - type = types.listOf (types.oneOf [ + type = types.listOf (types.enum [ "h264" "hevc" "mpeg2video"