Loading apps/decoder.c +1 −1 Original line number Diff line number Diff line Loading @@ -4667,7 +4667,7 @@ static ivas_error load_hrtf_from_file( /*---------------------------------------------------------------------* * restartDecoder() * * Restart decoder in case of format switching * Restart decoder in case of IVAS format switching *---------------------------------------------------------------------*/ static ivas_error restartDecoder( Loading apps/encoder_fmtsw.c +4 −1 Original line number Diff line number Diff line Loading @@ -274,7 +274,10 @@ cleanup: #ifdef IVAS_RTPDUMP IVAS_RTP_Term( &ivasRtp ); #endif if ( FmtSWFile ) { fclose( FmtSWFile ); } return mainFailed ? -1 : 0; } Loading lib_dec/lib_dec.c +3 −2 Original line number Diff line number Diff line Loading @@ -4661,7 +4661,7 @@ ivas_error IVAS_DEC_isRestartNeeded( /*---------------------------------------------------------------------* * IVAS_DEC_VoIP_IsEmpty( ) * * * Returns 'true' if decoder has no data in VoIP jitter buffer *---------------------------------------------------------------------*/ ivas_error IVAS_DEC_VoIP_IsEmpty( Loading Loading @@ -6125,7 +6125,7 @@ static void setDiegeticInputPI( ivas_error IVAS_DEC_FeedPiDataToDecoder( IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */ hPiDataTs piData, /* i : PI data received in rtp packet */ const uint32_t numPiData /* i : number of PI data received in rtp packet */ uint32_t numPiData /* i : number of PI data received in rtp packet */ ) { uint32_t i; Loading @@ -6142,6 +6142,7 @@ ivas_error IVAS_DEC_FeedPiDataToDecoder( for ( i = 0; i < numPiData; i++ ) { uint32_t piDataType = piData->data.noPiData.piDataType; numPiData--; /* Subtraction of WHILE variable */ switch ( piDataType ) { Loading lib_dec/lib_dec.h +2 −2 Original line number Diff line number Diff line Loading @@ -528,7 +528,7 @@ ivas_error IVAS_DEC_HasDecodedFirstGoodFrame( bool *hasDecodedFirstGoodFrame /* o : flag indicating if the decoder has decoded a good frame since it was configured */ ); /*! r: true if decoder has no data in VoIP jitter buffer */ /*! r: error code */ ivas_error IVAS_DEC_VoIP_IsEmpty( IVAS_DEC_HANDLE hIvasDec, /* i : IVAS decoder handle */ const int16_t nSamplesAsked, /* i : number of output samples asked */ Loading @@ -552,7 +552,7 @@ ivas_error IVAS_DEC_GetJbmData( ivas_error IVAS_DEC_FeedPiDataToDecoder( IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */ hPiDataTs piData, /* i : PI data received in rtp packet */ const uint32_t numPiData /* i : number of PI data received in rtp packet */ uint32_t numPiData /* i : number of PI data received in rtp packet */ ); #endif Loading readme.txt +31 −16 Original line number Diff line number Diff line Loading @@ -33,13 +33,13 @@ These files represent the 3GPP EVS Codec Extension for Immersive Voice and Audio Services (IVAS) floating-point C simulation. All code is writtten in ISO/IEC C99. The system is implemented as five separate programs: in ISO/IEC C99. The system is implemented as six separate programs: IVAS_cod IVAS Encoder IVAS_dec IVAS Decoder IVAS_rend IVAS External Renderer ISAR_post_rend ISAR Post Renderer ambi_converter Ambisonics format converter IVAS_cod_fmtsw IVAS Encoder with support for format switching ambi_converter example program for Ambisonics format conversion For encoding using the coder program, the input is a binary audio file (*.8k, *.16k, *.32k, *.48k) and the output is a binary Loading Loading @@ -123,6 +123,7 @@ should have the following structure: . `-- c-code |-- readme.txt |-- Makefile |-- Workspace_msvc |-- apps Loading @@ -134,21 +135,26 @@ should have the following structure: |-- lib_lc3plus |-- lib_rend |-- lib_util |-- readme.txt |-- .clang-format The package includes a Makefile for gcc, which has been verified on 32-bit Linux systems. The code can be compiled by entering the directory "c-code" and typing the command: make. The resulting encoder/decoder/renderer/ ISAR_post_renderer executables are named "IVAS_cod", "IVAS_dec", "IVAS_rend", and "ISAR_post_rend". All reside in the c-code directory. and "ISAR_post_rend". All reside in the c-code directory. In addition, this directory will contain a version of the encoder with support for format switching (named "IVAS_cod_fmtsw") and an example program for Ambisonics format conversion (named "ambi_converter"). The package also includes a solution-file for Microsoft Visual Studio 2017 (x86). To compile the code, please open "Workspace_msvc\Workspace_msvc.sln" and build "encoder" for the encoder, "decoder" for the decoder, and "renderer" for the renderer executable. The resulting encoder/decoder/renderer/ISAR_post_renderer executables are "IVAS_cod.exe", "IVAS_dec.exe", "IVAS_rend.exe", and "ISAR_post_rend.exe". All reside in the c-code main directory. "ISAR_post_rend.exe". All reside in the c-code main directory. In addition, this directory will contain a version of the encoder with support for format switching (named "IVAS_cod_fmtsw.exe") and an example program for Ambisonics format conversion (named "ambi_converter.exe"). INTEGRATION AS LIBRARIES Loading @@ -175,7 +181,7 @@ some potential race conditions. The usage of the "IVAS_cod" program is as follows: -------------------------------------------------- Usage: IVAS_cod.exe [Options] R Fs input_file bitstream_file Usage: IVAS_cod [Options] R Fs input_file bitstream_file Mandatory parameters: --------------------- Loading Loading @@ -261,9 +267,9 @@ EVS mono is default, for IVAS choose one of the following: -stereo, -ism, -sba, The usage of the "IVAS_dec" program is as follows: -------------------------------------------------- Usage for EVS: IVAS_dec.exe [Options] Fs bitstream_file output_file Usage for EVS: IVAS_dec [Options] Fs bitstream_file output_file OR usage for IVAS (below) with -evs option and OutputConf Usage for IVAS: IVAS_dec.exe [Options] OutputConf Fs bitstream_file output_file Usage for IVAS: IVAS_dec [Options] OutputConf Fs bitstream_file output_file Mandatory parameters: --------------------- Loading Loading @@ -372,8 +378,8 @@ Options: -q : Quiet mode, limit printouts to terminal, default is deactivated The usage of the "ISAR_post_rend" program: ------------------------------------------ The usage of the "ISAR_post_rend" program as follows: ----------------------------------------------------- Usage: ISAR_post_rend [options] Loading Loading @@ -414,8 +420,8 @@ omitted, the LFE input is downmixed to all channels with a factor of 1/N. Positi the LFE channel. Maximum number of supported loudskpeakers N is 16. An example custom loudspeaker layout file is available: ls_setup_16ch_8+4+4.txt The usage of the "ambi_converter" program ------------------------------------------ The usage of the "ambi_converter" program as follows: ----------------------------------------------------- Usage: ambi_converter input_file output_file input_convention output_convention Loading @@ -428,7 +434,16 @@ the following conventions are supported: 4 : SID-SN3D 5 : SID-N3D Either the input or the output convention must always be ACN-SN3D! Either the input or the output convention must always be ACN-SN3D. The usage of the "IVAS_cod_fmtsw" program is as follows: -------------------------------------------------------- Usage: IVAS_cod_fmtsw format_switching_file Mandatory parameters: --------------------- format_switching_file: Text file containing a valid encoder command line in each line RUNNING THE SELF TEST Loading Loading
apps/decoder.c +1 −1 Original line number Diff line number Diff line Loading @@ -4667,7 +4667,7 @@ static ivas_error load_hrtf_from_file( /*---------------------------------------------------------------------* * restartDecoder() * * Restart decoder in case of format switching * Restart decoder in case of IVAS format switching *---------------------------------------------------------------------*/ static ivas_error restartDecoder( Loading
apps/encoder_fmtsw.c +4 −1 Original line number Diff line number Diff line Loading @@ -274,7 +274,10 @@ cleanup: #ifdef IVAS_RTPDUMP IVAS_RTP_Term( &ivasRtp ); #endif if ( FmtSWFile ) { fclose( FmtSWFile ); } return mainFailed ? -1 : 0; } Loading
lib_dec/lib_dec.c +3 −2 Original line number Diff line number Diff line Loading @@ -4661,7 +4661,7 @@ ivas_error IVAS_DEC_isRestartNeeded( /*---------------------------------------------------------------------* * IVAS_DEC_VoIP_IsEmpty( ) * * * Returns 'true' if decoder has no data in VoIP jitter buffer *---------------------------------------------------------------------*/ ivas_error IVAS_DEC_VoIP_IsEmpty( Loading Loading @@ -6125,7 +6125,7 @@ static void setDiegeticInputPI( ivas_error IVAS_DEC_FeedPiDataToDecoder( IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */ hPiDataTs piData, /* i : PI data received in rtp packet */ const uint32_t numPiData /* i : number of PI data received in rtp packet */ uint32_t numPiData /* i : number of PI data received in rtp packet */ ) { uint32_t i; Loading @@ -6142,6 +6142,7 @@ ivas_error IVAS_DEC_FeedPiDataToDecoder( for ( i = 0; i < numPiData; i++ ) { uint32_t piDataType = piData->data.noPiData.piDataType; numPiData--; /* Subtraction of WHILE variable */ switch ( piDataType ) { Loading
lib_dec/lib_dec.h +2 −2 Original line number Diff line number Diff line Loading @@ -528,7 +528,7 @@ ivas_error IVAS_DEC_HasDecodedFirstGoodFrame( bool *hasDecodedFirstGoodFrame /* o : flag indicating if the decoder has decoded a good frame since it was configured */ ); /*! r: true if decoder has no data in VoIP jitter buffer */ /*! r: error code */ ivas_error IVAS_DEC_VoIP_IsEmpty( IVAS_DEC_HANDLE hIvasDec, /* i : IVAS decoder handle */ const int16_t nSamplesAsked, /* i : number of output samples asked */ Loading @@ -552,7 +552,7 @@ ivas_error IVAS_DEC_GetJbmData( ivas_error IVAS_DEC_FeedPiDataToDecoder( IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */ hPiDataTs piData, /* i : PI data received in rtp packet */ const uint32_t numPiData /* i : number of PI data received in rtp packet */ uint32_t numPiData /* i : number of PI data received in rtp packet */ ); #endif Loading
readme.txt +31 −16 Original line number Diff line number Diff line Loading @@ -33,13 +33,13 @@ These files represent the 3GPP EVS Codec Extension for Immersive Voice and Audio Services (IVAS) floating-point C simulation. All code is writtten in ISO/IEC C99. The system is implemented as five separate programs: in ISO/IEC C99. The system is implemented as six separate programs: IVAS_cod IVAS Encoder IVAS_dec IVAS Decoder IVAS_rend IVAS External Renderer ISAR_post_rend ISAR Post Renderer ambi_converter Ambisonics format converter IVAS_cod_fmtsw IVAS Encoder with support for format switching ambi_converter example program for Ambisonics format conversion For encoding using the coder program, the input is a binary audio file (*.8k, *.16k, *.32k, *.48k) and the output is a binary Loading Loading @@ -123,6 +123,7 @@ should have the following structure: . `-- c-code |-- readme.txt |-- Makefile |-- Workspace_msvc |-- apps Loading @@ -134,21 +135,26 @@ should have the following structure: |-- lib_lc3plus |-- lib_rend |-- lib_util |-- readme.txt |-- .clang-format The package includes a Makefile for gcc, which has been verified on 32-bit Linux systems. The code can be compiled by entering the directory "c-code" and typing the command: make. The resulting encoder/decoder/renderer/ ISAR_post_renderer executables are named "IVAS_cod", "IVAS_dec", "IVAS_rend", and "ISAR_post_rend". All reside in the c-code directory. and "ISAR_post_rend". All reside in the c-code directory. In addition, this directory will contain a version of the encoder with support for format switching (named "IVAS_cod_fmtsw") and an example program for Ambisonics format conversion (named "ambi_converter"). The package also includes a solution-file for Microsoft Visual Studio 2017 (x86). To compile the code, please open "Workspace_msvc\Workspace_msvc.sln" and build "encoder" for the encoder, "decoder" for the decoder, and "renderer" for the renderer executable. The resulting encoder/decoder/renderer/ISAR_post_renderer executables are "IVAS_cod.exe", "IVAS_dec.exe", "IVAS_rend.exe", and "ISAR_post_rend.exe". All reside in the c-code main directory. "ISAR_post_rend.exe". All reside in the c-code main directory. In addition, this directory will contain a version of the encoder with support for format switching (named "IVAS_cod_fmtsw.exe") and an example program for Ambisonics format conversion (named "ambi_converter.exe"). INTEGRATION AS LIBRARIES Loading @@ -175,7 +181,7 @@ some potential race conditions. The usage of the "IVAS_cod" program is as follows: -------------------------------------------------- Usage: IVAS_cod.exe [Options] R Fs input_file bitstream_file Usage: IVAS_cod [Options] R Fs input_file bitstream_file Mandatory parameters: --------------------- Loading Loading @@ -261,9 +267,9 @@ EVS mono is default, for IVAS choose one of the following: -stereo, -ism, -sba, The usage of the "IVAS_dec" program is as follows: -------------------------------------------------- Usage for EVS: IVAS_dec.exe [Options] Fs bitstream_file output_file Usage for EVS: IVAS_dec [Options] Fs bitstream_file output_file OR usage for IVAS (below) with -evs option and OutputConf Usage for IVAS: IVAS_dec.exe [Options] OutputConf Fs bitstream_file output_file Usage for IVAS: IVAS_dec [Options] OutputConf Fs bitstream_file output_file Mandatory parameters: --------------------- Loading Loading @@ -372,8 +378,8 @@ Options: -q : Quiet mode, limit printouts to terminal, default is deactivated The usage of the "ISAR_post_rend" program: ------------------------------------------ The usage of the "ISAR_post_rend" program as follows: ----------------------------------------------------- Usage: ISAR_post_rend [options] Loading Loading @@ -414,8 +420,8 @@ omitted, the LFE input is downmixed to all channels with a factor of 1/N. Positi the LFE channel. Maximum number of supported loudskpeakers N is 16. An example custom loudspeaker layout file is available: ls_setup_16ch_8+4+4.txt The usage of the "ambi_converter" program ------------------------------------------ The usage of the "ambi_converter" program as follows: ----------------------------------------------------- Usage: ambi_converter input_file output_file input_convention output_convention Loading @@ -428,7 +434,16 @@ the following conventions are supported: 4 : SID-SN3D 5 : SID-N3D Either the input or the output convention must always be ACN-SN3D! Either the input or the output convention must always be ACN-SN3D. The usage of the "IVAS_cod_fmtsw" program is as follows: -------------------------------------------------------- Usage: IVAS_cod_fmtsw format_switching_file Mandatory parameters: --------------------- format_switching_file: Text file containing a valid encoder command line in each line RUNNING THE SELF TEST Loading