INTERNATIONAL TELECOMMUNICATION UNION TELECOMMUNICATION STANDARDIZATION SECTOR FOCUS GROUP ON CAR COMMUNICATION FG CarCOM-C-38 English only STUDY PERIOD 2009-2012 Original: English Detroit, 16-17 July 2012 CONTRIBUTION Source: QNX Software Systems Title: Proposed DRAFT text and discussion points for “Signal Enhancement subsystem” clause of FG.VSSR Abstract This contribution describes a software program that could become part of FG.VSSR to enable filemode testing of the Signal Enhancement subsystem. This program would handle passing test signals to and from the signal enhancement subsystem. It would also simulate the dynamic effects introduced by other subsystems (e.g., acoustic interface). Purpose: For subsystem evaluation of the signal-enhancement module, pursuant to FG.VSSR. There are effectively two extremes of testing possible: 1. Real-time analog audio playback, in situ. Basically this is the existing P.1100 methodology, implemented at a sub-system analog interface 2. File-based processing though the library, using a standardized test bed. The vehicle characteristics-- noise and impulse responses are recorded in advance and used to define a simulated test environment. Of course there are any numbers of intermediate methods between these extremes. For our proposal we will suggest starting with the most basic file-based processing and define a potential roadmap for functional enhancement. Baseline requirements for file-based evaluation: Single file/event processing. This allows the most universal usage, and avoids the need to define specific data storage locations and file naming requirements related to multiple file processing. Batch processing can be implemented as desired using batch scripts or custom control programs. Contact: Rod Rempel QNX Software Systems Canada Tel: +1 604-639-5001 Email: [email protected] Contact: Scott Pennock QNX Software Systems Canada Tel: +1 408-887-6445 Email: [email protected] Attention: This is not a publication made available to the public, but an internal ITU-T Focus Group document intended only for use by participants of the Focus Group and their collaborators in ITU-T Focus Group related work. It shall not be made available to, and used by, any other persons or entities without the prior written consent of ITU-T. -2FG CarCOM-C-38 Test files will be in wavefile format, allowing header information regarding sample rate and bit-depth information encoding. Impulse response files will be stored as a 32bit wavefile, capturing the response from R2 to S2 in Figure 1. Primary system latency (R2 to S2) will be captured in the test files as a fixed delay in the receive file relative to the microphone file. Vehicle-specific send-path response (MRP to S2 in Figure 1) will be captured in the test files. Vehicle-specific noise (BGN in Figure 1) will be captured in the test recordings; voice and noise will be premixed in the test file. Support will be for up to two microphone channels, representing audio at S2 in Figure 1. The receive output and the microphone input must be at the same sample rate for this implementation, and it must match the sample rate of the impulse-response file. There will be no resampling in the initial implementation. Support will be for a single receive channel, representing audio at R3 in Figure 1. There will not be support for a reference channel (Ref in Figure 1). Initial support will be for the convolution of receive output with a provided impulse response, and the result mixed with the microphone channel data before passing to the signal enhancement The code will be ANSI standard C, with support for Windows, Macintosh, and Unix file I/O. Figure 1 (from FG-CarCOM -C-33 figure 7.8) Command line interface: SESSEval.exe micin.wav recin.wav micout.wav recout.wav [-micir micir.fir] [-quiet] [options] SESSEval.exe: Signal Enhancement SubSystem Evaluation program (test program). micin.wav: (required) name of microphone file to process, including path if necessary recin.wav: (required) name of receive file to process, including path if necessary -3FG CarCOM-C-38 micout.wav: (required) name of processed microphone audio (S3 in Figure 1), including path if necessary. If set to NONE then no file is saved. recout.wav: (required) name of processed receive audio (R2 in Figure 1), including path if necessary. If set to NONE then no file is saved. -micir micir.fir: (optional) impulse response file representing the response from R2 to S2, not including the primary system latency. Default is a Dirac (unity response). -quiet: (optional) display no messages, only provide an exit status. Default is to display messages to the standard output stream as well as an exit status. options:(optional) additional parameter(s) to pass to subsystem library during initialization. Do we need -timealign options for send / receive? This is needed if the evaluation code does not deal with data alignment. Exit code (numbers are placeholders, actual values to be decided): 0 Processing concluded successfully 1 Not enough required parameters passed. One or more of the four required filename parameters was missing 2 One or more parameter values are missing. --micir, --micbuffer, or --recbuffer were included without value being passed for them 3 Unrecognized command option 50 micir.fir does not seem to be a valid IR file 51 There is a mismatch in sample rates: micin.wav, micir.fir, and recout.wav must be the same sample rate 100 Could not open micin.wav for reading, or there was a problem while reading the file 101 micin.wav did not have a valid wave-format header 102 micin.wav had more than 2 channels of audio data 110 Could not open recin.wav for reading, or there was a problem while reading the file 111 recin.wav did not have a valid wave-format header 112 recin.wav had more than 1 channel of audio data 113 recin.wav was shorter than micin.wav (this could be treated as a warning???) 120 Could not open micoutout.wav for writing, or there was a problem while writing the file. -4FG CarCOM-C-38 130 Could not open recout.wav for writing, or there was a problem while writing the file. 200 An error occurred when creating the signal-enhancement library 210 An invalid value was returned for buffer sizes when creating the signal-enhancement library 211 An invalid value was returned for audio file information when creating the signalenhancement library 220 An error occurred when passing data into the signal-enhancement library 230 An error occurred when receiving data from the signal-enhancement library 255 An undefined error occurred Internal function calls: Int CreateAndInitSESS(SConfig& cfg) SConfig passes in: o NumMicChannels o SRMicIn o NumRecChannels (always 1 at the moment) o SRRecIn o Option string from commandline CreateAndInitSESS returns 0 if OK, otherwise an error code If OK, SConfig passes out: o MicBufferSize (bytes) o RecBufferSize (bytes) o MicOutSR o RecOutSR o MicAllign (bytes to truncate from the beginning of micout to account for internal processing) o RecAlign ((bytes to truncate from the beginning of reccout to account for internal processing) Int SESSPassAudio(MicIn, RecIn) MicIn and RecIn are pointers to arrays of data arrays, even though RecIn can currently be only 1 channel -5FG CarCOM-C-38 Int SESSGetAudio(MicOut, RecOut) MicOut and RecOut are pointers to arrays of data arrays, even though at the moment they should only be 1 channel each. -6FG CarCOM-C-38 Start Internal Logic Flow: Process command line parameters Yes Errors? No Open input files and read headers Yes Errors? No Initialize SESS library (CreateAndInitSESS) Yes Errors? No Open output files Yes Errors? No Read input from files Yes End of data? No Convolve RecOut with IR and mix with MicIn Pass to SESS library (SESSPassAudio) Close files Get data from SESS library (SESSGetAudio) No Yes Errors? Exit with errors Exit -7FG CarCOM-C-38 Patent rights declaration(s) QNX, Limited, or its parent company, Research In Motion, Limited, may have current or pending patent rights relating to the technology described in this contribution and, conditioned on reciprocity, is prepared to grant licenses under reasonable and non-discriminatory terms as necessary for implementation of the resulting ITU-T/ITU-R Recommendation | ISO/IEC International Standard (per box 2 of the ITU-T/ITU-R/ISO/IEC patent statement and licensing declaration form). _____________
© Copyright 2026 Paperzz