OSDN Git Service

LinGui: When translating legacy presets, vquality 0 means RF 0, not 0%
[handbrake-jp/handbrake-jp-git.git] / gtk / src / queuehandler.c
index 8bd60bb..24eded5 100644 (file)
@@ -70,9 +70,9 @@ add_to_queue_list(signal_user_data_t *ud, GValue *settings, GtkTreeIter *piter)
        gchar *dest, *preset, *vol_name, *basename;
        const gchar *vcodec, *container;
        gchar *fps, *vcodec_abbr;
-       gint title, start_chapter, end_chapter, width, height;
+       gint title, start_point, end_point, width, height;
        gint source_width, source_height;
-       gboolean pass2, keep_aspect, vqtype, turbo;
+       gboolean pass2 = FALSE, keep_aspect, vqtype, turbo;
        gint pic_par;
        gboolean tweaks;
        gchar *escape;
@@ -84,19 +84,29 @@ add_to_queue_list(signal_user_data_t *ud, GValue *settings, GtkTreeIter *piter)
                
        tweaks = ghb_settings_get_boolean(settings, "allow_tweaks");
        title = ghb_settings_get_int(settings, "titlenum");
-       start_chapter = ghb_settings_get_int(settings, "start_chapter");
-       end_chapter = ghb_settings_get_int(settings, "end_chapter");
-       pass2 = ghb_settings_get_boolean(settings, "VideoTwoPass");
+       start_point = ghb_settings_get_int(settings, "start_point");
+       end_point = ghb_settings_get_int(settings, "end_point");
        vol_name = ghb_settings_get_string(settings, "volume_label");
        dest = ghb_settings_get_string(settings, "destination");
        basename = g_path_get_basename(dest);
        escape = g_markup_escape_text(basename, -1);
+
+       vqtype = ghb_settings_get_boolean(settings, "vquality_type_constant");
+       if (!vqtype)
+               pass2 = ghb_settings_get_boolean(settings, "VideoTwoPass");
+       const gchar *points;
+       if (ghb_settings_combo_int(settings, "PtoPType") == 0)
+               points = "Chapters";
+       else if (ghb_settings_combo_int(settings, "PtoPType") == 1)
+               points = "Seconds";
+       else if (ghb_settings_combo_int(settings, "PtoPType") == 2)
+               points = "Frames";
        info = g_strdup_printf 
        (
                "<big><b>%s</b></big> "
-               "<small>(Title %d, Chapters %d through %d, %d Video %s)"
+               "<small>(Title %d, %s %d through %d, %d Video %s)"
                " --> %s</small>",
-                vol_name, title, start_chapter, end_chapter
+                vol_name, title, points, start_point, end_point
                 pass2 ? 2:1, pass2 ? "Passes":"Pass", escape
        );
        g_free(basename);
@@ -256,7 +266,7 @@ add_to_queue_list(signal_user_data_t *ud, GValue *settings, GtkTreeIter *piter)
                vqvalue = ghb_settings_get_double(settings, "VideoQualitySlider");
                vq_desc = "Constant Quality:";
                vqstr = g_strdup_printf("%d", (gint)vqvalue);
-               vq_units = "(crf)";
+               vq_units = "(RF)";
        }
        fps = ghb_settings_get_string(settings, "VideoFramerate");
        if (strcmp("source", fps) == 0)
@@ -511,6 +521,7 @@ audio_list_refresh(signal_user_data_t *ud)
                {
                        const gchar *track, *codec, *br, *sr, *mix;
                        gchar *drc, *s_track, *s_codec, *s_br, *s_sr, *s_mix;
+                       gint itrack, icodec;
                        gdouble s_drc;
                        GValue *asettings;
 
@@ -520,7 +531,9 @@ audio_list_refresh(signal_user_data_t *ud)
                        asettings = ghb_array_get_nth(audio_list, row);
 
                        track = ghb_settings_combo_option(asettings, "AudioTrack");
+                       itrack = ghb_settings_combo_int(asettings, "AudioTrack");
                        codec = ghb_settings_combo_option(asettings, "AudioEncoder");
+                       icodec = ghb_settings_combo_int(asettings, "AudioEncoder");
                        br = ghb_settings_combo_option(asettings, "AudioBitrate");
                        sr = ghb_settings_combo_option(asettings, "AudioSamplerate");
                        mix = ghb_settings_combo_option(asettings, "AudioMixdown");
@@ -536,6 +549,9 @@ audio_list_refresh(signal_user_data_t *ud)
                        else
                                drc = g_strdup_printf("%.1f", s_drc);
 
+                       if (icodec == HB_ACODEC_MASK)
+                               codec = ghb_select_audio_codec_str(ud, itrack);
+
                        gtk_list_store_set(GTK_LIST_STORE(store), &iter, 
                                // These are displayed in list
                                0, track,
@@ -1035,7 +1051,8 @@ ghb_queue_buttons_grey(signal_user_data_t *ud)
        scan_state = ghb_get_scan_state();
 
        show_stop = queue_state & 
-                               (GHB_STATE_WORKING | GHB_STATE_SCANNING | GHB_STATE_MUXING);
+                               (GHB_STATE_WORKING | GHB_STATE_SEARCHING | 
+                                GHB_STATE_SCANNING | GHB_STATE_MUXING);
        show_start = !(scan_state & GHB_STATE_SCANNING) && 
                                        (titleindex >= 0 || queue_count > 0);
 
@@ -1196,7 +1213,8 @@ queue_start_clicked_cb(GtkWidget *xwidget, signal_user_data_t *ud)
        gint state;
 
        state = ghb_get_queue_state();
-       if (state & (GHB_STATE_WORKING | GHB_STATE_SCANNING | GHB_STATE_MUXING))
+       if (state & (GHB_STATE_WORKING | GHB_STATE_SEARCHING | 
+                                GHB_STATE_SCANNING | GHB_STATE_MUXING))
        {
                ghb_cancel_encode(ud, "You are currently encoding.  "
                                                                "What would you like to do?");
@@ -1271,6 +1289,8 @@ ghb_reload_queue(signal_user_data_t *ud)
                {
                        GtkWidget *widget = GHB_WIDGET (ud->builder, "queue_window");
                        gtk_widget_show (widget);
+                       widget = GHB_WIDGET (ud->builder, "show_queue");
+                       gtk_toggle_tool_button_set_active(GTK_TOGGLE_TOOL_BUTTON(widget), TRUE);
 
                        ud->queue = queue;
                        // First get rid of any old items we don't want