- return -1;
- }
- else
- {
- count = subtitle_opts.count;
- for (ii = 0; ii < count; ii++)
- {
- if (strcmp(lang, subtitle_opts.map[ii].svalue) == 0)
- {
- return subtitle_opts.map[ii].ivalue;
- }
- }
- return -1;
- }
-}
-
-gint
-ghb_pick_subtitle_track(signal_user_data_t *ud)
-{
- gint ii, count, track, candidate, first;
- GValue *settings, *subtitle_list;
-
- first = candidate = ghb_settings_combo_int(ud->settings, "SubtitleTrack");
- subtitle_list = ghb_settings_get_value(ud->settings, "subtitle_list");
- count = ghb_array_len(subtitle_list);
- for (ii = 0; ii < count; ii++)
- {
- settings = ghb_array_get_nth(subtitle_list, ii);
- track = ghb_settings_combo_int(settings, "SubtitleTrack");
- if (candidate == track)
- {
- // Already in use, pick another
- candidate++;
- if (candidate >= subtitle_opts.count-1)
- {
- candidate = 0;
- }
- if (candidate == first)
- {
- candidate = -1;
- break;
- }
- ii = -1;
- }