diff options
-rw-r--r-- | gtk/src/hb-backend.c | 19 | ||||
-rw-r--r-- | libhb/work.c | 2 |
2 files changed, 11 insertions, 10 deletions
diff --git a/gtk/src/hb-backend.c b/gtk/src/hb-backend.c index 94e5c216b..3b69d9747 100644 --- a/gtk/src/hb-backend.c +++ b/gtk/src/hb-backend.c @@ -1092,19 +1092,15 @@ ghb_grey_combo_options(GtkBuilder *builder) grey_combo_box_item(builder, "AudioEncoder", HB_ACODEC_LAME, FALSE); grey_combo_box_item(builder, "AudioEncoder", HB_ACODEC_VORBIS, FALSE); - gboolean allow_ac3 = TRUE; - allow_ac3 = (container != HB_MUX_OGM); + gboolean allow_dca = TRUE; + allow_dca = (container != HB_MUX_MP4); - if (allow_ac3) - { - grey_combo_box_item(builder, "AudioEncoder", HB_ACODEC_AC3, FALSE); + grey_combo_box_item(builder, "AudioEncoder", HB_ACODEC_AC3, FALSE); + if (allow_dca) grey_combo_box_item(builder, "AudioEncoder", HB_ACODEC_DCA, FALSE); - } else - { - grey_combo_box_item(builder, "AudioEncoder", HB_ACODEC_AC3, TRUE); grey_combo_box_item(builder, "AudioEncoder", HB_ACODEC_DCA, TRUE); - } + if (audio && audio->in.codec != HB_ACODEC_AC3) { grey_combo_box_item(builder, "AudioEncoder", HB_ACODEC_AC3, TRUE); @@ -3193,6 +3189,11 @@ ghb_validate_audio(signal_user_data_t *ud) a_unsup = "Vorbis"; codec = HB_ACODEC_FAAC; } + if (codec == HB_ACODEC_DCA) + { + a_unsup = "DTS"; + codec = HB_ACODEC_FAAC; + } } else if (mux == HB_MUX_AVI) { diff --git a/libhb/work.c b/libhb/work.c index 42613c3fb..4cd9ffe6e 100644 --- a/libhb/work.c +++ b/libhb/work.c @@ -720,7 +720,7 @@ static void do_job( hb_job_t * job, int cpu_count ) audio->priv.fifo_in = hb_fifo_init( 32 ); audio->priv.fifo_raw = hb_fifo_init( FIFO_CPU_MULT * cpu_count ); audio->priv.fifo_sync = hb_fifo_init( 32 ); - audio->priv.fifo_out = hb_fifo_init( FIFO_CPU_MULT * cpu_count ); + audio->priv.fifo_out = hb_fifo_init( 8 * FIFO_CPU_MULT * cpu_count ); /* |