diff --git a/src/app/app_settings.c b/src/app/app_settings.c index e43e8b305..88cc9d30d 100644 --- a/src/app/app_settings.c +++ b/src/app/app_settings.c @@ -68,8 +68,8 @@ void settings_initialize(app_settings_t *config, char *conf_dir) { config->absmouse = true; config->virtual_mouse = false; config->hdr = false; - config->av1 = true; config->hevc = true; + config->av1 = false; config->conf_dir = conf_dir; config->ini_path = path_join(conf_dir, CONF_NAME_MOONLIGHT); diff --git a/src/app/ui/settings/panes/video.pane.c b/src/app/ui/settings/panes/video.pane.c index bd463b21f..40d481be2 100644 --- a/src/app/ui/settings/panes/video.pane.c +++ b/src/app/ui/settings/panes/video.pane.c @@ -86,18 +86,7 @@ static lv_obj_t *create_obj(lv_fragment_t *self, lv_obj_t *container) { pref_header(view, "Video Settings"); - lv_obj_t *av1_checkbox = pref_checkbox(view, locstr("Use AV1 if possible"), &app_configuration->av1, false); - lv_obj_t *av1_hint = pref_desc_label(view, NULL, false); - if (app->ss4s.video_cap.codecs & SS4S_VIDEO_AV1) { - lv_obj_clear_state(av1_checkbox, LV_STATE_DISABLED); - lv_label_set_text(av1_hint, locstr("AV1 usually has better graphics, and supports HDR.")); - } else { - lv_obj_add_state(av1_checkbox, LV_STATE_DISABLED); - lv_label_set_text_fmt(av1_hint, locstr("%s decoder doesn't support AV1 codec."), - SS4S_ModuleInfoGetName(app->ss4s.selection.video_module)); - } - - lv_obj_t *hevc_checkbox = pref_checkbox(view, locstr("Use H265 if possible"), &app_configuration->hevc, false); + lv_obj_t *hevc_checkbox = pref_checkbox(view, locstr("Use H265 when possible"), &app_configuration->hevc, false); lv_obj_t *hevc_hint = pref_desc_label(view, NULL, false); if (app->ss4s.video_cap.codecs & SS4S_VIDEO_H265) { lv_obj_clear_state(hevc_checkbox, LV_STATE_DISABLED); @@ -108,6 +97,19 @@ static lv_obj_t *create_obj(lv_fragment_t *self, lv_obj_t *container) { SS4S_ModuleInfoGetName(app->ss4s.selection.video_module)); } + lv_obj_t *av1_checkbox = pref_checkbox(view, locstr("Use AV1 when possible (Experimental)"), + &app_configuration->av1, false); + lv_obj_t *av1_hint = pref_desc_label(view, NULL, false); + if (app->ss4s.video_cap.codecs & SS4S_VIDEO_AV1) { + lv_obj_clear_state(av1_checkbox, LV_STATE_DISABLED); + lv_label_set_text(av1_hint, locstr("AV1 usually has better graphics, and supports HDR. " + "However, it might be much slower than H265 or H264.")); + } else { + lv_obj_add_state(av1_checkbox, LV_STATE_DISABLED); + lv_label_set_text_fmt(av1_hint, locstr("%s decoder doesn't support AV1 codec."), + SS4S_ModuleInfoGetName(app->ss4s.selection.video_module)); + } + lv_obj_t *hdr_checkbox = pref_checkbox(view, locstr("HDR"), &app_configuration->hdr, false); lv_obj_t *hdr_hint = pref_desc_label(view, NULL, false); controller->hdr_checkbox = hdr_checkbox;