summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--gtk/src/hb-backend.c19
-rw-r--r--libhb/work.c2
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 );
/*