]> granicus.if.org Git - handbrake/commitdiff
LinGui: filter out high444 from h264 profiles
authorjstebbins <jstebbins.hb@gmail.com>
Mon, 31 Dec 2012 17:19:49 +0000 (17:19 +0000)
committerjstebbins <jstebbins.hb@gmail.com>
Mon, 31 Dec 2012 17:19:49 +0000 (17:19 +0000)
and force profile to auto when RF < 1.0
and fix a problem with video quality slider digits display when changing
granularity in preferences.

git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5125 b64f7644-9d1e-0410-96f1-a4d463321fa5

gtk/src/callbacks.c
gtk/src/hb-backend.c

index 7fd616ab4cf0695ce656e7fd9be3cb7fb000b44c..0f99948b9fa010a988b859583c9a384fb520b8d8 100644 (file)
@@ -1780,6 +1780,12 @@ vquality_changed_cb(GtkWidget *widget, signal_user_data_t *ud)
     ghb_clear_presets_selection(ud);
     ghb_live_reset(ud);
 
+    double vquality = ghb_settings_get_double(ud->settings, "VideoQualitySlider");
+    if (vquality < 1.0)
+    {
+        ghb_ui_update(ud, "h264Profile", ghb_string_value("auto"));
+    }
+
     gint vcodec = ghb_settings_combo_int(ud->settings, "VideoEncoder");
     gdouble step;
     if (vcodec == HB_VCODEC_X264)
@@ -3869,6 +3875,7 @@ vqual_granularity_changed_cb(GtkWidget *widget, signal_user_data_t *ud)
     ghb_vquality_range(ud, &vqmin, &vqmax, &step, &page, &digits, &inverted);
     GtkWidget *qp = GHB_WIDGET(ud->builder, "VideoQualitySlider");
     gtk_range_set_increments (GTK_RANGE(qp), step, page);
+    gtk_scale_set_digits(GTK_SCALE(qp), digits);
 }
 
 G_MODULE_EXPORT void
index e1e4187d3f324efea5b10fd36fd592ffebcd7011..38ccb00c9d512fb314a7dcecb8c39fef3e540da3 100644 (file)
@@ -2109,7 +2109,8 @@ x264_profile_opts_set(GtkBuilder *builder, const gchar *name)
         // HandBrake doesn't support high10 (10 bit encoding)
         // or high422 (YUV422)
         if (!strcasecmp("high10", profiles[ii]) ||
-            !strcasecmp("high422", profiles[ii]))
+            !strcasecmp("high422", profiles[ii]) ||
+            !strcasecmp("high444", profiles[ii]))
         {
             continue;
         }
@@ -4648,6 +4649,7 @@ ghb_validate_vquality(GValue *settings)
                 return FALSE;
             }
             g_free(message);
+            ghb_settings_set_string(settings, "h264Profile", "auto");
         }
         else if (vquality < min || vquality > max)
         {