Skip to content
......@@ -60,8 +60,18 @@ ivas_error RenderConfigReader_getAcousticEnvironment(
ivas_error RenderConfigReader_getDirectivity(
RenderConfigReader *pRenderConfigReader, /* i : RenderConfigReader handle */
uint16_t *pId, /* i : Directivity pattern ID */
#ifdef CONF_DISTATT
Word16 *directivity_fx /* o : Target directivity */
#else
float *directivity /* o : Target directivity */
#endif
);
#ifdef CONF_DISTATT
ivas_error RenderConfigReader_getDistanceAttenuation(
RenderConfigReader *pRenderConfigReader, /* i : RenderConfigReader handle */
Word32 *distAtt_fx /* o : Distance attenuation */
);
#endif
/* Verifies configuration parameters */
ivas_error RenderConfigReader_checkValues(
IVAS_RENDER_CONFIG_HANDLE hRenderConfig /* o : Renderer configuration handle */
......
......@@ -32,12 +32,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 three separate programs:
Audio Services (IVAS) BASOP C simulation. All code is writtten
in ISO/IEC C99. The system is implemented as four separate programs:
IVAS_cod Encoder
IVAS_dec Decoder
IVAS_rend Renderer
IVAS_cod IVAS Encoder
IVAS_dec IVAS Decoder
IVAS_rend IVAS External Renderer
ISAR_post_rend ISAR Post Renderer
For encoding using the coder program, the input is a binary
audio file (*.8k, *.16k, *.32k, *.48k) and the output is a binary
......@@ -128,6 +129,8 @@ should have the following structure:
|-- lib_debug
|-- lib_dec
|-- lib_enc
|-- lib_isar
|-- lib_lc3plus
|-- lib_rend
|-- lib_util
|-- readme.txt
......@@ -135,16 +138,16 @@ should have the following structure:
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
executables are named "IVAS_cod", "IVAS_dec", and "IVAS_rend". All reside
in the c-code 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.
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 executables are
"IVAS_cod.exe", "IVAS_dec.exe", and "IVAS_rend.exe". All reside in the c-code
main directory.
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.
RUNNING THE SOFTWARE
......@@ -239,7 +242,8 @@ Usage for IVAS: IVAS_dec.exe [Options] OutputConf Fs bitstream_file output_file
Mandatory parameters:
---------------------
OutputConf : Output configuration: MONO, STEREO, 5_1, 7_1, 5_1_2, 5_1_4, 7_1_4, FOA,
HOA2, HOA3, BINAURAL, BINAURAL_ROOM_IR, BINAURAL_ROOM_REVERB, EXT
HOA2, HOA3, BINAURAL, BINAURAL_ROOM_IR, BINAURAL_ROOM_REVERB,
BINAURAL_SPLIT_CODED, BINAURAL_SPLIT_PCM, EXT
By default, channel order and loudspeaker positions are equal to the
encoder. For loudspeaker outputs, OutputConf can be a custom loudspeaker
layout file. See below for details.
......@@ -284,6 +288,7 @@ Options:
specified) for binaural output configuration
-aeid ID : Acoustic environment ID (number >= 0) for BINAURAL_ROOM_REVERB output config.
-level level : Complexity level, level = (1, 2, 3), will be defined after characterisation.
-om File : Coded metadata File for BINAURAL_SPLIT_PCM OutputConf
Currently, all values default to level 3 (full functionality).
-q : Quiet mode, limit printouts to terminal, default is deactivated
......@@ -314,7 +319,11 @@ Options:
-exof File : External orientation trajectory File for simulation of external orientations
-dpid ID : Directivity pattern ID(s) (space-separated list of up to 4 numbers can be
specified) for binaural output configuration
-aeid ID : Acoustic environment ID (number >= 0) for BINAURAL_ROOM_REVERB output config.
-aeid ID : Acoustic environment ID (number > 0) or
a sequence thereof in the format [ID1:duration1,ID2:duration2...]
without braces and spaces, with ':' character separating ID from duration and ',' separating
ID and duration pairs, where duration is specified in frames
for BINAURAL_ROOM_REVERB output configuration.
-lp Position : Output LFE position. Comma-delimited triplet of [gain, azimuth, elevation] where gain is linear
(like --gain, -g) and azimuth, elevation are in degrees.
If specified, overrides the default behavior which attempts to map input to output LFE channel(s)
......@@ -325,11 +334,27 @@ Options:
-g : Input gain (linear, not in dB) to be applied to input audio file
-l : List supported audio formats
-smd : Metadata Synchronization Delay in ms, Default is 0. Quantized by 5ms subframes.
-om File : Coded metadata File for BINAURAL_SPLIT_PCM output format
-level level : Complexity level, level = (1, 2, 3), will be defined after characterisation.
Currently, all values default to level 3 (full functionality).
-q : Quiet mode, limit printouts to terminal, default is deactivated
The usage of the "ISAR_post_rend" program:
------------------------------------------
Usage: ISAR_post_rend [options]
Options:
--------
-i File : Input File (input file is bitstream if format is BINAURAL_SPLIT_CODED, or PCM/WAV file if format is BINAURAL_SPLIT_PCM)
-if Format : Input Format of input (BINAURAL_SPLIT_CODED, BINAURAL_SPLIT_PCM)
-im File : Coded metadata File for BINAURAL_SPLIT_PCM input format
-o File : Output Audio File in BINAURAL format
-fs : Input sampling rate in kHz (48)
-prbfi File : BFI File
MULTICHANNEL LOUDSPEAKER INPUT / OUTPUT CONFIGURATIONS
======================================================
The loudspeaker positions for each MC layouts are assumed to have the following azimuth and elevation
......@@ -582,4 +607,3 @@ Example renderer configuration files are available, e.g.:
rend_rend_config_hospital_patientroom.cfg
rend_config_recreation.cfg
rend_config_renderer.cfg
\ No newline at end of file