Commit 3b0d3551 authored by Archit Tamarapu's avatar Archit Tamarapu
Browse files
Merge branch 'main' of ssh://forge.3gpp.org:29419/ivas-codec-pc/ivas-codec into 1419-enable-rendering-to-all-output-formats-for-evs-mono-and-ivas-stereo-bitstreams
parents 71f0b774 024fd209
Loading
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -71,6 +71,9 @@ LDLIBS += -lm

# Clang sanitizer compiler options
CCCLANG = clang
ifeq "$(CLANG)" "0"
CC       = $(CCCLANG)
endif
ifeq "$(CLANG)" "1"
CC       = $(CCCLANG)
CFLAGS  += -fsanitize=memory
+15 −0
Original line number Diff line number Diff line
@@ -63,6 +63,9 @@
#include "flp_debug.h"
#endif

#ifdef FIXED_RTP_SEQUENCE_NUM
#define RANDOM_INITSEED_DEC ( 0xFEEDFADE )
#endif

#define WMC_TOOL_SKIP

@@ -1872,6 +1875,14 @@ static ivas_error initOnFirstGoodFrame(
        ISAR_SPLIT_REND_POSE_CORRECTION_MODE poseCorrection;
        int16_t splitRendIsarFrameSizeMs;
        int16_t lc3plusHighRes;
#ifdef FIXED_RTP_SEQUENCE_NUM
        /* Ideally ssrc is negotiated via SDP and sequence number is radomized but we
        use fixed seed for random num generator for regression based tests. Any realtime
        application should implement this initialization seperately */
        srand( RANDOM_INITSEED_DEC );
        uint32_t ssrc = ( (uint32_t) rand() & 0x0000FFFF ) | ( (uint32_t) rand() << 16 );
        uint16_t seqNumInitVal = (uint16_t) ( rand() & 0xFFFF );
#endif

        if ( ( error = IVAS_DEC_GetDelay( hIvasDec, delayNumSamples_temp, &delayTimeScale_temp ) ) != IVAS_ERR_OK )
        {
@@ -1910,7 +1921,11 @@ static ivas_error initOnFirstGoodFrame(


            /* Split Rendering RTPDump Output file */
#ifdef FIXED_RTP_SEQUENCE_NUM
            if ( ( error = IVAS_RTP_WRITER_Init( srRtp, arg.outputWavFilename, 1000 / ( IVAS_NUM_FRAMES_PER_SEC * splitRendCodecFrameSizeMs ), ssrc, seqNumInitVal ) ) != IVAS_ERR_OK )
#else
            if ( ( error = IVAS_RTP_WRITER_Init( srRtp, arg.outputWavFilename, 1000 / ( IVAS_NUM_FRAMES_PER_SEC * splitRendCodecFrameSizeMs ) ) ) != IVAS_ERR_OK )
#endif
            {
                fprintf( stderr, "\nError: Can't open SR output bitstream file for RTP output %s \n\n", arg.outputWavFilename );
                return error;
+16 −0
Original line number Diff line number Diff line
@@ -50,6 +50,9 @@
#include "flp_debug.h"
#endif

#ifdef FIXED_RTP_SEQUENCE_NUM
#define RANDOM_INITSEED_ENC ( 0xFEEDDEAF )
#endif

#define WMC_TOOL_SKIP

@@ -231,6 +234,15 @@ int main(
    IVAS_RTP ivasRtp = { 0 };
#endif

#ifdef FIXED_RTP_SEQUENCE_NUM
    /* Ideally ssrc is negotiated via SDP and sequence number is radomized but we
       use fixed seed for random num generator for regression based tests. Any realtime
       application should implement this initialization seperately */
    srand( RANDOM_INITSEED_ENC );
    uint32_t ssrc = ( (uint32_t) rand() & 0x0000FFFF ) | ( (uint32_t) rand() << 16 );
    uint16_t seqNumInitVal = (uint16_t) ( rand() & 0xFFFF );
#endif

    /*------------------------------------------------------------------------------------------*
     * Parse command-line arguments
     *------------------------------------------------------------------------------------------*/
@@ -628,7 +640,11 @@ int main(

    if ( arg.rtpdumpOutput )
    {
#ifdef FIXED_RTP_SEQUENCE_NUM
        if ( ( error = IVAS_RTP_WRITER_Init( &ivasRtp, arg.outputBitstreamFilename, arg.numFramesPerPacket, ssrc, seqNumInitVal ) ) != IVAS_ERR_OK )
#else
        if ( ( error = IVAS_RTP_WRITER_Init( &ivasRtp, arg.outputBitstreamFilename, arg.numFramesPerPacket ) ) != IVAS_ERR_OK )
#endif
        {
            fprintf( stderr, "\nError: Can't open output bitstream file for RTP output %s \n\n", arg.outputBitstreamFilename );
            goto cleanup;
+42 −0
Original line number Diff line number Diff line
make -f Makefile clean
make -f Makefile -j CLANG=0
cp IVAS_cod IVAS_cod_ref
cp IVAS_dec IVAS_dec_ref
cp IVAS_rend IVAS_rend_ref
cp ISAR_post_rend ISAR_post_rend_ref
python3 scripts/prepare_combined_format_inputs.py
python3 -m pytest -q tests/codec_be_on_mr_nonselection tests/renderer_short/test_renderer.py tests/split_rendering/test_split_rendering.py -v -n auto --update_ref 1 --create_ref --keep_files --html=report_cmd.html --self-contained-html
python3 scripts/parse_commands.py report_cmd.html Readme_IVAS.txt  
rm -rf testvec
mkdir testvec
mkdir testvec/binauralRenderer_interface
mkdir testvec/testv
mkdir testvec/testv/renderer_short
mkdir testvec/testv/split_rendering        
mkdir testvec/bin    
cp -r scripts/testv/* testvec/testv
cp -r scripts/ls_layouts testvec
cp -r scripts/object_edit testvec
cp -r scripts/switchPaths testvec
cp -r scripts/trajectories testvec
cp -r scripts/binauralRenderer_interface/binaural_renderers_hrtf_data testvec/binauralRenderer_interface
cp -r tests/ref testvec/testv/ref
cp -r tests/renderer_short/ref testvec/testv/renderer_short/ref
cp -r tests/split_rendering/ref testvec/testv/split_rendering/ref
cp -r tests/split_rendering/renderer_configs testvec/testv/split_rendering/renderer_configs
cp -r tests/split_rendering/error_patterns testvec/testv/split_rendering/error_patterns

python3 scripts/cleanup_26252.py

cp -r tests/conformance-test testvec/
cp Readme_IVAS_dec.txt testvec
cp Readme_IVAS_enc.txt testvec
cp Readme_IVAS_rend.txt testvec
cp Readme_IVAS_JBM_dec.txt testvec
cp Readme_IVAS_ISAR_dec.txt testvec
cp Readme_IVAS_ISAR_post_rend.txt testvec

cp IVAS_cod testvec/bin
cp IVAS_dec testvec/bin
cp IVAS_rend testvec/bin
cp ISAR_post_rend testvec/bin
+1 −0
Original line number Diff line number Diff line
@@ -161,6 +161,7 @@

#define RTP_S4_251135_CR26253_0016_REV1                /* RTP Pack/Unpack API corresponding to CR 26253 */
#define IVAS_RTPDUMP                                   /* RTPDUMP writing and reading for IVAS payloads */
#define FIXED_RTP_SEQUENCE_NUM                         /* Remove random sequence number initialization */

/* ################### Start BE switches ################################# */
/* only BE switches wrt selection floating point code */
Loading