Commit 26b00c11 authored by vaclav's avatar vaclav
Browse files

Merge remote-tracking branch 'remotes/origin/main' into split_rendering_formal_improvements

parents 0cfd1533 f8beb0bb
Loading
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -1592,8 +1592,6 @@ static void usage_dec( void )
#endif
    fprintf( stdout, "-non_diegetic_pan P : panning mono non-diegetic sound to stereo with paning P, -90<= P <=90,\n" );
    fprintf( stdout, "                      left or l or 90->left, right or r or -90->right, center or c or  0->middle\n" );
    fprintf( stdout, "-q                  : Quiet mode, no frame counter\n" );
    fprintf( stdout, "                      default is deactivated\n" );
#ifdef DEBUGGING
    fprintf( stdout, "-FEC X              : Insert frame erasures, X = 0-10 is the percentage\n" );
    fprintf( stdout, "                      of erased frames, or X may be the name of binary file or \n" );
@@ -1601,12 +1599,14 @@ static void usage_dec( void )
    fprintf( stdout, "                      containing FEC pattern (short values of 0 (good) or 1 (bad))\n" );
    fprintf( stdout, "                      default is OFF, if this option is not used\n" );
    fprintf( stdout, "-force R            : Force specific binaural rendering mode, R = (TDREND, CLDFBREND),\n" );
    fprintf( stdout, "-level level        : Complexity level, level = (1, 2, 3), will be defined after characterisation. \n" );
    fprintf( stdout, "                      Currently, all values default to level 3 (full functionality).\n" );
#endif
    fprintf( stdout, "-exof File          : External orientation File for external orientation trajectory\n" );
    fprintf( stdout, "-dpid ID            : Directivity pattern ID(s) (space-separated list of up to 4 numbers can be specified) for binaural output configuration\n" );
    fprintf( stdout, "-aeid ID            : Acoustic environment ID (number >= 0) for BINAURAL_ROOM_REVERB output configuration\n" );
    fprintf( stdout, "-level level        : Complexity level, level = (1, 2, 3), will be defined after characterisation. \n" );
    fprintf( stdout, "                      Currently, all values default to level 3 (full functionality).\n" );
    fprintf( stdout, "-q                  : Quiet mode, no frame counter\n" );
    fprintf( stdout, "                      default is deactivated\n" );
#ifdef DEBUG_MODE_INFO
#ifdef DEBUG_MODE_INFO_TWEAK
    fprintf( stdout, "-info <folder>      : specify subfolder name for debug output\n" );
+9 −17
Original line number Diff line number Diff line
@@ -1912,16 +1912,8 @@ static void usage_enc( void )
    fprintf( stdout, "                                                for 2 ISM, 3 ISM and 4 ISM also 160000, 192000, 256000) \n" );
    fprintf( stdout, "                                                for 3 ISM and 4 ISM also 384000 \n" );
    fprintf( stdout, "                                                for 4 ISM also 512000 \n" );
    fprintf( stdout, "                      for IVAS SBA, MASA, MC R=(13200, 16400, 24400, 32000, 48000, 64000, 80000, \n" );
    fprintf( stdout, "                                                96000, 128000, 160000, 192000, 256000, 384000, 512000) \n" );
#ifdef SBA_AND_OBJECTS
    fprintf( stdout, "                      for IVAS objects-SBA R =(13200, 16400, 24400, 32000, 48000, 64000, 96000, 128000, \n" );
    fprintf( stdout, "                                                160000, 192000, 256000, 384000, 512000)\n" );
#endif
#ifdef MASA_AND_OBJECTS
    fprintf( stdout, "                      for IVAS objects-MASA R =(13200, 16400, 24400, 32000, 48000, 64000, 96000, 128000, \n" );
    fprintf( stdout, "                                                160000, 192000, 256000, 384000, 512000)\n" );
#endif
    fprintf( stdout, "                      for IVAS SBA, MASA, MC, ISM-SBA, and ISM-MASA R=(13200, 16400, 24400, 32000, 48000, 64000,\n" );
    fprintf( stdout, "                                                80000, 96000, 128000, 160000, 192000, 256000, 384000, 512000) \n" );
    fprintf( stdout, "                      Alternatively, R can be a bitrate switching file which consists of R values\n" );
    fprintf( stdout, "                      indicating the bitrate for each frame in bps. These values are stored in\n" );
    fprintf( stdout, "                      binary format using 4 bytes per value\n" );
@@ -1932,7 +1924,7 @@ static void usage_enc( void )

    fprintf( stdout, "Options:\n" );
    fprintf( stdout, "--------\n" );
    fprintf( stdout, "EVS mono is default, for IVAS choose one of the following: -stereo, -ism, -sba, -masa, -mc\n" );
    fprintf( stdout, "EVS mono is default, for IVAS choose one of the following: -stereo, -ism, -sba, -masa, -mc, -ism_sba, -ism_masa\n" );
    fprintf( stdout, "-stereo             : Stereo format \n" );
    fprintf( stdout, "-ism (+)Ch Files    : ISM format \n" );
    fprintf( stdout, "                      where Ch specifies the number of ISMs (1-4)\n" );
@@ -1946,16 +1938,16 @@ static void usage_enc( void )
    fprintf( stdout, "                      where Ch specifies the number of MASA input/transport channels (1 or 2): \n" );
    fprintf( stdout, "                      and File specifies input file containing parametric MASA metadata \n" );
#ifdef SBA_AND_OBJECTS
    fprintf( stdout, "-ism_sba IsmChannels SBAorder IsmFiles : SBA and ISM format \n" );
    fprintf( stdout, "                      where IsmChannels specifies the number of ISms (1-4)\n" );
    fprintf( stdout, "                      and SBAorder specifies the SBA order (1 to 3) \n" );
    fprintf( stdout, "                      and IsmFiles specify input files containing metadata, one file per object \n" );
    fprintf( stdout, "-ism_sba IsmCh +/-Order IsmFiles : SBA and ISM combined format\n" );
    fprintf( stdout, "                      where IsmCh specifies the number of ISMs (1-4)\n" );
    fprintf( stdout, "                      and Order specifies the SBA order (1 to 3) \n" );
    fprintf( stdout, "                      and IsmFiles specify input files containing ISM metadata, one file per object \n" );
#endif
#ifdef MASA_AND_OBJECTS
    fprintf( stdout, "-ism_masa IsmCh MasaCh IsmFiles MasaFile : MASA and ISM format \n" );
    fprintf( stdout, "-ism_masa IsmCh MasaCh IsmFiles MasaFile : MASA and ISM combined format \n" );
    fprintf( stdout, "                      where IsmCh specifies the number of ISMs (1-4),\n" );
    fprintf( stdout, "                      MasaCh specifies the number of MASA input/transport channels (1-2), \n" );
    fprintf( stdout, "                      IsmFiles specify input files containing metadata, one file per object, \n" );
    fprintf( stdout, "                      IsmFiles specify input files containing ISM metadata, one file per object, \n" );
    fprintf( stdout, "                      and MasaFile specifies input file containing parametric MASA metadata \n" );
#endif
    fprintf( stdout, "-mc InputConf       : Multi-channel format\n" );
+29 −0
Original line number Diff line number Diff line
@@ -174,6 +174,9 @@ typedef struct
    int8_t orientation_tracking;
    int16_t nonDiegeticPan;
    float nonDiegeticPanGain;
#ifdef FIX_706_REND_COMPLEXITY_LEVELS
    IVAS_REND_COMPLEXITY_LEVEL complexityLevel;
#endif
    bool delayCompensationEnabled;
    bool quietModeEnabled;
    bool sceneDescriptionInput;
@@ -207,6 +210,9 @@ typedef enum
    CmdLnOptionId_orientationTracking,
    CmdlnOptionId_lfePosition,
    CmdlnOptionId_lfeMatrix,
#ifdef FIX_706_REND_COMPLEXITY_LEVELS
    CmdLnOptionId_complexityLevel,
#endif
    CmdLnOptionId_noDelayCmp,
    CmdLnOptionId_quietModeEnabled,
    CmdLnOptionId_inputMetadata,
@@ -333,6 +339,14 @@ static const CmdLnParser_Option cliOptions[] = {
        .matchShort = "ndc",
        .description = "[flag] Turn off delay compensation",
    },
#ifdef FIX_706_REND_COMPLEXITY_LEVELS
    {
        .id = CmdLnOptionId_complexityLevel,
        .match = "complexity_level",
        .matchShort = "level",
        .description = "Complexity level, level = (1, 2, 3), will be defined after characterisation.",
    },
#endif
    {
        .id = CmdLnOptionId_quietModeEnabled,
        .match = "quiet",
@@ -2672,6 +2686,21 @@ static void parseOption(
            strncpy( args->inLfePanningMatrixFile, optionValues[0], RENDERER_MAX_CLI_ARG_LENGTH - 1 );
            args->lfeCustomRoutingEnabled = true;
            break;
#ifdef FIX_706_REND_COMPLEXITY_LEVELS
        case CmdLnOptionId_complexityLevel:
            assert( numOptionValues == 1 );
            args->complexityLevel = (int32_t) ( strtol( optionValues[0], NULL, 10 ) );
            if ( args->complexityLevel < IVAS_REND_COMPLEXITY_LEVEL_ONE || args->complexityLevel > IVAS_REND_COMPLEXITY_LEVEL_THREE )
            {
                fprintf( stdout, "Invalid complexity level specified.\n" );
                exit( -1 );
            }
            else if ( args->complexityLevel == IVAS_REND_COMPLEXITY_LEVEL_ONE || args->complexityLevel == IVAS_REND_COMPLEXITY_LEVEL_TWO )
            {
                fprintf( stdout, "Complexity levels 1 and 2 will be defined after characterisation - default to level 3 (full functionality).\n" );
            }
            break;
#endif
        case CmdLnOptionId_noDelayCmp:
            assert( numOptionValues == 0 );
            args->delayCompensationEnabled = false;

lib_com/options.h

100755 → 100644
+2 −0
Original line number Diff line number Diff line
@@ -178,6 +178,8 @@
#define FIX_LARGE_RENDERER_DELAY_COMP                   /* Fix renderer delay compensation with delays greater than 1 frame */

#define API_5MS                                         /*FhG, Dlb: add 5ms framing cmd line arg*/
#define FIX_706_REND_COMPLEXITY_LEVELS                  /* VoiceAge: Implement complexity levels to renderer */


/* ################## End BE DEVELOPMENT switches ######################### */

+9 −0
Original line number Diff line number Diff line
@@ -120,6 +120,15 @@ typedef enum

typedef uint16_t IVAS_REND_InputId;

#ifdef FIX_706_REND_COMPLEXITY_LEVELS
typedef enum _IVAS_REND_COMPLEXITY_LEVEL
{
    IVAS_REND_COMPLEXITY_LEVEL_ONE = 1,
    IVAS_REND_COMPLEXITY_LEVEL_TWO = 2,
    IVAS_REND_COMPLEXITY_LEVEL_THREE = 3
} IVAS_REND_COMPLEXITY_LEVEL;
#endif


/* clang-format off */
/*----------------------------------------------------------------------------------*
Loading