Loading apps/encoder.c +79 −36 Original line number Diff line number Diff line Loading @@ -201,9 +201,6 @@ int main( int16_t *pcmBuf = NULL; #ifdef DEBUGGING FILE *f_forcedModeProfile = NULL; #ifdef DEBUG_FORCE_DIR bool f_forceModeDir = false; #endif #endif #ifdef WMOPS Loading Loading @@ -541,26 +538,8 @@ int main( #ifdef DEBUGGING IVAS_ENC_FORCED_MODE forcedMode = arg.forcedMode; int32_t force_profile_cnt = 0; #ifdef DEBUG_FORCE_DIR struct stat path_stat; #endif if ( arg.forcedModeFile ) { #ifdef DEBUG_FORCE_DIR if ( stat( arg.forcedModeFile, &path_stat ) != 0 ) { fprintf( stderr, "\nError: The profile file/dir could not be opened: %s\n\n", arg.forcedModeFile ); usage_enc(); goto cleanup; } /* check if it is a directory */ if ( S_ISDIR( path_stat.st_mode ) ) { f_forceModeDir = true; } else { if ( ( f_forcedModeProfile = fopen( arg.forcedModeFile, "rb" ) ) == NULL ) { Loading @@ -569,15 +548,6 @@ int main( goto cleanup; } } #else if ( ( f_forcedModeProfile = fopen( arg.forcedModeFile, "rb" ) ) == NULL ) { fprintf( stderr, "\nError: Incorrect mode specification or the profile file could not be opened: %s\n\n", arg.forcedModeFile ); usage_enc(); goto cleanup; } #endif } #endif /*------------------------------------------------------------------------------------------* Loading Loading @@ -724,16 +694,12 @@ int main( } /* Force mode not set when configuring, set in first frame even if not reading from file */ if ( f_forcedModeProfile || #ifdef DEBUG_FORCE_DIR f_forceModeDir || #endif frame == 0 ) if ( f_forcedModeProfile || frame == 0 ) { if ( ( error = IVAS_ENC_SetForcedMode( hIvasEnc, forcedMode #ifdef DEBUG_FORCE_DIR , arg.forcedModeFile arg.forcedModeDir #endif ) ) != IVAS_ERR_OK ) { Loading Loading @@ -906,6 +872,9 @@ static void initArgStruct( EncArguments *arg ) #ifdef DEBUGGING arg->forcedMode = IVAS_ENC_FORCE_UNFORCED; arg->forcedModeFile = NULL; #ifdef DEBUG_FORCE_DIR arg->forcedModeDir = NULL; #endif #endif arg->pca = false; Loading Loading @@ -1046,6 +1015,28 @@ static bool parseCmdlIVAS_enc( arg->forcedMode = parseForcedMode( stmp ); #ifdef DEBUG_FORCE_DIR if ( arg->forcedMode < IVAS_ENC_FORCE_FILE ) { fprintf( stdout, "Forcing codec to: %s\n", argv[i + 1] ); } else if ( arg->forcedMode == IVAS_ENC_FORCE_FILE ) { arg->forcedModeFile = argv[i + 1]; fprintf( stdout, "Force switching file: %s\n", argv[i + 1] ); } else if ( arg->forcedMode == IVAS_ENC_FORCE_DIR ) { arg->forcedModeDir = argv[i + 1]; fprintf( stdout, "Forcing switching directory: %s\n", argv[i + 1] ); } else { fprintf( stderr, "\nError: The force switching profile file/dir %s does not exist or could not be opened!\n\n", argv[i + 1] ); usage_enc(); return false; } #else if ( arg->forcedMode == IVAS_ENC_FORCE_UNDEFINED ) { arg->forcedModeFile = argv[i + 1]; Loading @@ -1055,6 +1046,7 @@ static bool parseCmdlIVAS_enc( { fprintf( stdout, "Forcing codec to: %s\n", argv[i + 1] ); } #endif i += 2; } Loading Loading @@ -1958,8 +1950,58 @@ static bool readBitrate( static IVAS_ENC_FORCED_MODE parseForcedMode( char *forcedModeChar ) { #ifdef DEBUG_FORCE_DIR struct stat path_stat; #endif to_upper( forcedModeChar ); #ifdef DEBUG_FORCE_DIR if ( ( strcmp( forcedModeChar, "SPEECH" ) == 0 ) || ( strcmp( forcedModeChar, "'SPEECH'" ) == 0 ) || ( strcmp( forcedModeChar, "0" ) == 0 ) ) { return IVAS_ENC_FORCE_SPEECH; } else if ( ( strcmp( forcedModeChar, "MUSIC" ) == 0 ) || ( strcmp( forcedModeChar, "'MUSIC'" ) == 0 ) || ( strcmp( forcedModeChar, "AUDIO" ) == 0 ) || ( strcmp( forcedModeChar, "'AUDIO'" ) == 0 ) || ( strcmp( forcedModeChar, "1" ) == 0 ) ) { return IVAS_ENC_FORCE_MUSIC; } else if ( ( strcmp( forcedModeChar, "ACELP" ) == 0 ) || ( strcmp( forcedModeChar, "'ACELP'" ) == 0 ) ) { return IVAS_ENC_FORCE_ACELP; } else if ( ( strcmp( forcedModeChar, "GSC" ) == 0 ) || ( strcmp( forcedModeChar, "'GSC'" ) == 0 ) ) { return IVAS_ENC_FORCE_GSC; } else if ( ( strcmp( forcedModeChar, "TCX" ) == 0 ) || ( strcmp( forcedModeChar, "'TCX'" ) == 0 ) ) { return IVAS_ENC_FORCE_TCX; } else if ( ( strcmp( forcedModeChar, "HQ" ) == 0 ) || ( strcmp( forcedModeChar, "'HQ'" ) == 0 ) ) { return IVAS_ENC_FORCE_HQ; } else { if ( stat( forcedModeChar, &path_stat ) != 0 ) { return IVAS_ENC_FORCE_UNDEFINED; } /* check if the argument represents an existing file or directory */ if ( S_ISDIR( path_stat.st_mode ) ) { /* it's a directory */ return IVAS_ENC_FORCE_DIR; } else { /* it's a file */ return IVAS_ENC_FORCE_FILE; } } #else if ( ( strcmp( forcedModeChar, "SPEECH" ) == 0 ) || ( strcmp( forcedModeChar, "'SPEECH'" ) == 0 ) || ( strcmp( forcedModeChar, "0" ) == 0 ) ) { Loading Loading @@ -1987,6 +2029,7 @@ static IVAS_ENC_FORCED_MODE parseForcedMode( } return IVAS_ENC_FORCE_UNDEFINED; #endif } Loading Loading
apps/encoder.c +79 −36 Original line number Diff line number Diff line Loading @@ -201,9 +201,6 @@ int main( int16_t *pcmBuf = NULL; #ifdef DEBUGGING FILE *f_forcedModeProfile = NULL; #ifdef DEBUG_FORCE_DIR bool f_forceModeDir = false; #endif #endif #ifdef WMOPS Loading Loading @@ -541,26 +538,8 @@ int main( #ifdef DEBUGGING IVAS_ENC_FORCED_MODE forcedMode = arg.forcedMode; int32_t force_profile_cnt = 0; #ifdef DEBUG_FORCE_DIR struct stat path_stat; #endif if ( arg.forcedModeFile ) { #ifdef DEBUG_FORCE_DIR if ( stat( arg.forcedModeFile, &path_stat ) != 0 ) { fprintf( stderr, "\nError: The profile file/dir could not be opened: %s\n\n", arg.forcedModeFile ); usage_enc(); goto cleanup; } /* check if it is a directory */ if ( S_ISDIR( path_stat.st_mode ) ) { f_forceModeDir = true; } else { if ( ( f_forcedModeProfile = fopen( arg.forcedModeFile, "rb" ) ) == NULL ) { Loading @@ -569,15 +548,6 @@ int main( goto cleanup; } } #else if ( ( f_forcedModeProfile = fopen( arg.forcedModeFile, "rb" ) ) == NULL ) { fprintf( stderr, "\nError: Incorrect mode specification or the profile file could not be opened: %s\n\n", arg.forcedModeFile ); usage_enc(); goto cleanup; } #endif } #endif /*------------------------------------------------------------------------------------------* Loading Loading @@ -724,16 +694,12 @@ int main( } /* Force mode not set when configuring, set in first frame even if not reading from file */ if ( f_forcedModeProfile || #ifdef DEBUG_FORCE_DIR f_forceModeDir || #endif frame == 0 ) if ( f_forcedModeProfile || frame == 0 ) { if ( ( error = IVAS_ENC_SetForcedMode( hIvasEnc, forcedMode #ifdef DEBUG_FORCE_DIR , arg.forcedModeFile arg.forcedModeDir #endif ) ) != IVAS_ERR_OK ) { Loading Loading @@ -906,6 +872,9 @@ static void initArgStruct( EncArguments *arg ) #ifdef DEBUGGING arg->forcedMode = IVAS_ENC_FORCE_UNFORCED; arg->forcedModeFile = NULL; #ifdef DEBUG_FORCE_DIR arg->forcedModeDir = NULL; #endif #endif arg->pca = false; Loading Loading @@ -1046,6 +1015,28 @@ static bool parseCmdlIVAS_enc( arg->forcedMode = parseForcedMode( stmp ); #ifdef DEBUG_FORCE_DIR if ( arg->forcedMode < IVAS_ENC_FORCE_FILE ) { fprintf( stdout, "Forcing codec to: %s\n", argv[i + 1] ); } else if ( arg->forcedMode == IVAS_ENC_FORCE_FILE ) { arg->forcedModeFile = argv[i + 1]; fprintf( stdout, "Force switching file: %s\n", argv[i + 1] ); } else if ( arg->forcedMode == IVAS_ENC_FORCE_DIR ) { arg->forcedModeDir = argv[i + 1]; fprintf( stdout, "Forcing switching directory: %s\n", argv[i + 1] ); } else { fprintf( stderr, "\nError: The force switching profile file/dir %s does not exist or could not be opened!\n\n", argv[i + 1] ); usage_enc(); return false; } #else if ( arg->forcedMode == IVAS_ENC_FORCE_UNDEFINED ) { arg->forcedModeFile = argv[i + 1]; Loading @@ -1055,6 +1046,7 @@ static bool parseCmdlIVAS_enc( { fprintf( stdout, "Forcing codec to: %s\n", argv[i + 1] ); } #endif i += 2; } Loading Loading @@ -1958,8 +1950,58 @@ static bool readBitrate( static IVAS_ENC_FORCED_MODE parseForcedMode( char *forcedModeChar ) { #ifdef DEBUG_FORCE_DIR struct stat path_stat; #endif to_upper( forcedModeChar ); #ifdef DEBUG_FORCE_DIR if ( ( strcmp( forcedModeChar, "SPEECH" ) == 0 ) || ( strcmp( forcedModeChar, "'SPEECH'" ) == 0 ) || ( strcmp( forcedModeChar, "0" ) == 0 ) ) { return IVAS_ENC_FORCE_SPEECH; } else if ( ( strcmp( forcedModeChar, "MUSIC" ) == 0 ) || ( strcmp( forcedModeChar, "'MUSIC'" ) == 0 ) || ( strcmp( forcedModeChar, "AUDIO" ) == 0 ) || ( strcmp( forcedModeChar, "'AUDIO'" ) == 0 ) || ( strcmp( forcedModeChar, "1" ) == 0 ) ) { return IVAS_ENC_FORCE_MUSIC; } else if ( ( strcmp( forcedModeChar, "ACELP" ) == 0 ) || ( strcmp( forcedModeChar, "'ACELP'" ) == 0 ) ) { return IVAS_ENC_FORCE_ACELP; } else if ( ( strcmp( forcedModeChar, "GSC" ) == 0 ) || ( strcmp( forcedModeChar, "'GSC'" ) == 0 ) ) { return IVAS_ENC_FORCE_GSC; } else if ( ( strcmp( forcedModeChar, "TCX" ) == 0 ) || ( strcmp( forcedModeChar, "'TCX'" ) == 0 ) ) { return IVAS_ENC_FORCE_TCX; } else if ( ( strcmp( forcedModeChar, "HQ" ) == 0 ) || ( strcmp( forcedModeChar, "'HQ'" ) == 0 ) ) { return IVAS_ENC_FORCE_HQ; } else { if ( stat( forcedModeChar, &path_stat ) != 0 ) { return IVAS_ENC_FORCE_UNDEFINED; } /* check if the argument represents an existing file or directory */ if ( S_ISDIR( path_stat.st_mode ) ) { /* it's a directory */ return IVAS_ENC_FORCE_DIR; } else { /* it's a file */ return IVAS_ENC_FORCE_FILE; } } #else if ( ( strcmp( forcedModeChar, "SPEECH" ) == 0 ) || ( strcmp( forcedModeChar, "'SPEECH'" ) == 0 ) || ( strcmp( forcedModeChar, "0" ) == 0 ) ) { Loading Loading @@ -1987,6 +2029,7 @@ static IVAS_ENC_FORCED_MODE parseForcedMode( } return IVAS_ENC_FORCE_UNDEFINED; #endif } Loading