summaryrefslogtreecommitdiffstats
path: root/test/test.c
diff options
context:
space:
mode:
Diffstat (limited to 'test/test.c')
-rw-r--r--test/test.c23
1 files changed, 21 insertions, 2 deletions
diff --git a/test/test.c b/test/test.c
index 403a2f2cd..b3c0b1620 100644
--- a/test/test.c
+++ b/test/test.c
@@ -76,6 +76,7 @@ static char ** srtfile = NULL;
static char ** srtcodeset = NULL;
static char ** srtoffset = NULL;
static char ** srtlang = NULL;
+static int srtdefault = -1;
static int subtitle_scan = 0;
static int width = 0;
static int height = 0;
@@ -1821,8 +1822,9 @@ static int HandleEvents( hb_handle_t * h )
{
lang = srtlang[i];
}
+ sub_config.default_track =
+ ( srtdefault != -1 ) && ( srtdefault == i + 1 );
sub_config.force = 0;
- sub_config.default_track = 0;
strncpy( sub_config.src_filename, srtfile[i], 128);
strncpy( sub_config.src_codeset, codeset, 40);
sub_config.offset = offset;
@@ -2345,7 +2347,7 @@ static void ShowHelp()
" --subtitle-burn \"Burn\" the selected subtitle into the video track\n"
" <number> If \"number\" is omitted, the first trac is burned.\n"
" --subtitle-default Flag the selected subtitle as the default subtitle\n"
- " <number> to be displayed upon playback. Settings no default\n"
+ " <number> to be displayed upon playback. Setting no default\n"
" means no subtitle will be automatically displayed\n"
" If \"number\" is omitted, the first trac is default.\n"
" -N, --native-language Specifiy the your language preference. When the first\n"
@@ -2371,6 +2373,11 @@ static void ShowHelp()
" --srt-lang <string> Language as an iso639-2 code fra, eng, spa et cetera)\n"
" for the SRT file(s) separated by commas. If not specified\n"
" then 'und' is used.\n"
+ " --srt-default Flag the selected srt as the default subtitle\n"
+ " <number> to be displayed upon playback. Setting no default\n"
+ " means no subtitle will be automatically displayed\n"
+ " If \"number\" is omitted, the first srt is default.\n"
+ " \"number\" is an 1 based index into the srt-file list\n"
"\n"
@@ -2485,6 +2492,7 @@ static int ParseOptions( int argc, char ** argv )
#define SRT_CODESET 270
#define SRT_OFFSET 271
#define SRT_LANG 272
+ #define SRT_DEFAULT 273
for( ;; )
{
@@ -2519,6 +2527,7 @@ static int ParseOptions( int argc, char ** argv )
{ "srt-codeset", required_argument, NULL, SRT_CODESET },
{ "srt-offset", required_argument, NULL, SRT_OFFSET },
{ "srt-lang", required_argument, NULL, SRT_LANG },
+ { "srt-default", optional_argument, NULL, SRT_DEFAULT },
{ "native-language", required_argument, NULL,'N' },
{ "native-dub", no_argument, NULL, NATIVE_DUB },
{ "encoder", required_argument, NULL, 'e' },
@@ -2750,6 +2759,16 @@ static int ParseOptions( int argc, char ** argv )
case SRT_LANG:
srtlang = str_split( optarg, ',' );
break;
+ case SRT_DEFAULT:
+ if( optarg != NULL )
+ {
+ srtdefault = atoi( optarg );
+ }
+ else
+ {
+ srtdefault = 1 ;
+ }
+ break;
case '2':
twoPass = 1;
break;