diff options
author | dec05eba <dec05eba@protonmail.com> | 2024-08-17 19:55:09 +0200 |
---|---|---|
committer | dec05eba <dec05eba@protonmail.com> | 2024-08-17 19:55:09 +0200 |
commit | 3ec93bcc41d9636f0acd195c60ca86e58f356637 (patch) | |
tree | 8cc0449d143a1964ebce764a6d41e91f8c79f613 /include | |
parent | 1e39dc6286f3659733da9a81453991fd5a95a4f5 (diff) |
Add hevc_10bit and av1_10bit options for 10bit color range, increase video quality (qp)
Diffstat (limited to 'include')
-rw-r--r-- | include/capture/kms.h | 1 | ||||
-rw-r--r-- | include/capture/nvfbc.h | 2 | ||||
-rw-r--r-- | include/capture/portal.h | 2 | ||||
-rw-r--r-- | include/capture/xcomposite.h | 1 | ||||
-rw-r--r-- | include/color_conversion.h | 5 | ||||
-rw-r--r-- | include/encoder/video/cuda.h | 2 | ||||
-rw-r--r-- | include/encoder/video/software.h | 2 | ||||
-rw-r--r-- | include/encoder/video/vaapi.h | 2 |
8 files changed, 12 insertions, 5 deletions
diff --git a/include/capture/kms.h b/include/capture/kms.h index 278a391..f19e462 100644 --- a/include/capture/kms.h +++ b/include/capture/kms.h @@ -6,6 +6,7 @@ typedef struct { gsr_egl *egl; const char *display_to_capture; /* if this is "screen", then the first monitor is captured. A copy is made of this */ + gsr_color_depth color_depth; gsr_color_range color_range; bool hdr; bool record_cursor; diff --git a/include/capture/nvfbc.h b/include/capture/nvfbc.h index e24b712..9655921 100644 --- a/include/capture/nvfbc.h +++ b/include/capture/nvfbc.h @@ -12,7 +12,7 @@ typedef struct { vec2i size; bool direct_capture; bool overclock; - bool hdr; + gsr_color_depth color_depth; gsr_color_range color_range; bool record_cursor; bool use_software_video_encoder; diff --git a/include/capture/portal.h b/include/capture/portal.h index f80325d..2e2c6f2 100644 --- a/include/capture/portal.h +++ b/include/capture/portal.h @@ -5,8 +5,8 @@ typedef struct { gsr_egl *egl; + gsr_color_depth color_depth; gsr_color_range color_range; - bool hdr; bool record_cursor; bool restore_portal_session; /* If this is set to NULL then this defaults to $XDG_CONFIG_HOME/gpu-screen-recorder/restore_token ($XDG_CONFIG_HOME defaults to $HOME/.config) */ diff --git a/include/capture/xcomposite.h b/include/capture/xcomposite.h index 707421f..98b8766 100644 --- a/include/capture/xcomposite.h +++ b/include/capture/xcomposite.h @@ -12,6 +12,7 @@ typedef struct { gsr_color_range color_range; bool record_cursor; bool track_damage; + gsr_color_depth color_depth; } gsr_capture_xcomposite_params; gsr_capture* gsr_capture_xcomposite_create(const gsr_capture_xcomposite_params *params); diff --git a/include/color_conversion.h b/include/color_conversion.h index d05df6a..236bfbd 100644 --- a/include/color_conversion.h +++ b/include/color_conversion.h @@ -11,6 +11,11 @@ typedef enum { } gsr_color_range; typedef enum { + GSR_COLOR_DEPTH_8_BITS, + GSR_COLOR_DEPTH_10_BITS +} gsr_color_depth; + +typedef enum { GSR_SOURCE_COLOR_RGB, GSR_SOURCE_COLOR_BGR } gsr_source_color; diff --git a/include/encoder/video/cuda.h b/include/encoder/video/cuda.h index 802e72e..6d32e09 100644 --- a/include/encoder/video/cuda.h +++ b/include/encoder/video/cuda.h @@ -8,7 +8,7 @@ typedef struct gsr_egl gsr_egl; typedef struct { gsr_egl *egl; bool overclock; - bool hdr; + gsr_color_depth color_depth; } gsr_video_encoder_cuda_params; gsr_video_encoder* gsr_video_encoder_cuda_create(const gsr_video_encoder_cuda_params *params); diff --git a/include/encoder/video/software.h b/include/encoder/video/software.h index e39d5f8..fd2dc6b 100644 --- a/include/encoder/video/software.h +++ b/include/encoder/video/software.h @@ -7,7 +7,7 @@ typedef struct gsr_egl gsr_egl; typedef struct { gsr_egl *egl; - bool hdr; + gsr_color_depth color_depth; } gsr_video_encoder_software_params; gsr_video_encoder* gsr_video_encoder_software_create(const gsr_video_encoder_software_params *params); diff --git a/include/encoder/video/vaapi.h b/include/encoder/video/vaapi.h index 2981a01..b509f17 100644 --- a/include/encoder/video/vaapi.h +++ b/include/encoder/video/vaapi.h @@ -7,7 +7,7 @@ typedef struct gsr_egl gsr_egl; typedef struct { gsr_egl *egl; - bool hdr; + gsr_color_depth color_depth; } gsr_video_encoder_vaapi_params; gsr_video_encoder* gsr_video_encoder_vaapi_create(const gsr_video_encoder_vaapi_params *params); |