]> granicus.if.org Git - handbrake/commitdiff
LinGui: fix audio sanitizing after muxer change
authorJohn Stebbins <jstebbins.hb@gmail.com>
Thu, 10 Nov 2016 19:43:03 +0000 (11:43 -0800)
committerJohn Stebbins <jstebbins.hb@gmail.com>
Thu, 10 Nov 2016 19:43:41 +0000 (11:43 -0800)
gtk/src/audiohandler.c
gtk/src/callbacks.c

index c42ebdbfd47355bc8f15469aedc2036617551129..32228e5dccc7f02dc54068f9b1ce98534bff3c7a 100644 (file)
@@ -273,13 +273,9 @@ ghb_select_audio_codec(gint mux, hb_audio_config_t *aconfig, gint acodec, gint f
     for (enc = hb_audio_encoder_get_next(NULL); enc != NULL;
          enc = hb_audio_encoder_get_next(enc))
     {
-        if (enc->codec == fallback &&
-            !(enc->muxers & mux))
+        if (enc->codec == fallback && !(enc->muxers & mux))
         {
-            if ( mux & HB_MUX_MASK_MKV )
-                fallback = HB_ACODEC_LAME;
-            else
-                fallback = HB_ACODEC_FFAAC;
+            fallback = hb_audio_encoder_get_default(mux);
             break;
         }
     }
@@ -291,8 +287,7 @@ ghb_select_audio_codec(gint mux, hb_audio_config_t *aconfig, gint acodec, gint f
     for (enc = hb_audio_encoder_get_next(NULL); enc != NULL;
          enc = hb_audio_encoder_get_next(enc))
     {
-        if (enc->codec == acodec &&
-            !(enc->muxers & mux))
+        if (enc->codec == acodec && !(enc->muxers & mux))
         {
             return fallback;
         }
index 092bb6435bb10125a37cb7fd142439071c419b08..29e576b2bc30f6d9fc3e86275ad3309e7781d226 100644 (file)
@@ -1647,6 +1647,10 @@ container_changed_cb(GtkWidget *widget, signal_user_data_t *ud)
 {
     g_debug("container_changed_cb ()");
     ghb_widget_to_setting(ud->settings, widget);
+    const char * mux = ghb_dict_get_string(ud->settings, "FileFormat");
+    GhbValue *dest_dict = ghb_get_job_dest_settings(ud->settings);
+    ghb_dict_set_string(dest_dict, "Mux", mux);
+
     ghb_check_dependency(ud, widget, NULL);
     ghb_show_container_options(ud);
     update_acodec(ud);