{
gtk_widget_set_sensitive(xwidget, FALSE);
}
+ ghb_update_destination_extension(ud);
}
G_MODULE_EXPORT void
int container;
const gchar *extension = "error";
GValue *audio_list;
+ GValue *subtitle_list;
container = ghb_settings_combo_int(ud->settings, "FileFormat");
if (container == HB_MUX_MP4)
{
extension = "mp4";
audio_list = ghb_settings_get_value(ud->settings, "audio_list");
- if (ghb_ac3_in_audio_list (audio_list))
- {
- extension = "m4v";
- }
- else if (ghb_settings_get_boolean(ud->settings, "ChapterMarkers"))
- {
- extension = "m4v";
- }
- else if (ghb_settings_get_boolean(ud->settings, "UseM4v"))
+ subtitle_list = ghb_settings_get_value(ud->settings, "subtitle_list");
+ if (ghb_ac3_in_audio_list(audio_list) ||
+ ghb_soft_in_subtitle_list(subtitle_list) ||
+ ghb_settings_get_boolean(ud->settings, "ChapterMarkers") ||
+ ghb_settings_get_boolean(ud->settings, "UseM4v"))
{
extension = "m4v";
}
return FALSE;
}
+gboolean
+ghb_soft_in_subtitle_list(GValue *subtitle_list)
+{
+ gint count, ii;
+ GValue *settings;
+
+ count = ghb_array_len(subtitle_list);
+ for (ii = 0; ii < count; ii++)
+ {
+ settings = ghb_array_get_nth(subtitle_list, ii);
+ if (!ghb_settings_get_boolean(settings, "SubtitleBurned"))
+ {
+ return TRUE;
+ }
+ }
+ return FALSE;
+}
+
void
ghb_subtitle_exclusive_burn(signal_user_data_t *ud, gint index)
{
widget = GHB_WIDGET (ud->builder, "srt_add");
gtk_widget_set_sensitive(widget, FALSE);
}
+ ghb_update_destination_extension(ud);
ghb_live_reset(ud);
}
widget = GHB_WIDGET (ud->builder, "srt_add");
gtk_widget_set_sensitive(widget, FALSE);
}
+ ghb_update_destination_extension(ud);
ghb_live_reset(ud);
}
// Unburn the rest
if (active)
ghb_subtitle_exclusive_burn(ud, row);
+ ghb_update_destination_extension(ud);
ghb_live_reset(ud);
}
signal_user_data_t *ud, GValue *settings);
void ghb_reset_subtitles(signal_user_data_t *ud, GValue *settings);
void ghb_subtitle_prune(signal_user_data_t *ud);
+gboolean ghb_soft_in_subtitle_list(GValue *subtitle_list);
#endif // _SUBTITLEHANDLER_H_