QNX handsfree telephony includes a remote control server (RCS) that gives access to the QNX acoustic processing library over a network connection.
The QNX remote control server (RCS) allows you to use the QWALive tuning application to connect to the acoustic processing library over a network connection. When you use the RCS with QWALive you can:
To enable RCS in the handsfree telephony module you need to make two changes to the io-acoustic configuration file:
The sample below shows the module section of the configuration file with the parameters set to enable RCS access:
# Single device input and output, RCS enabled <hf apm-aap-rcs-hf.so> inputs 1 ichannels1 2 iroute1_1 IOAP_MIC_IN_1 iroute1_2 IOAP_PHONE_IN_1 outputs 1 ochannels1 2 oroute1_1 IOAP_PHONE_OUT_1 oroute1_2 IOAP_SPKR_OUT_1 qcf /etc/acoustic/mono.qcf msprime 30 rcsactive true </hf>
At startup, the handsfree module first sets up the acoustic library with built-in defaults. It then uses information from tuning (.qcf) files to refine the acoustic processing for the given platform and usage scenario. The choice of tuning file depends on whether RCS is enabled.
Normal (RCS not enabled)
If the RCS module isn't enabled, the handsfree module will tune the library in the following order:
RCS enabled
If the RCS module is enabled and the qcf_rcs field is defined in the io-acoustic configuration file, the handsfree module will tune the library in the following order:
Each time the handsfree module is started by a call to ioap_hf_go(), the module tunes the acoustic processing library as defined above, unless QWALive is used to restart the target or ioap_hf_config() has been called previously to change the qcf parameter.
Behavior when qcf_rcs is defined
When the qcf_rcs parameter is defined in the io-acoustic configuration file, if the RCS client downloads new tuning parameters to the target (QWALive Push to Target), this download overwrites the contents of the tuning file. All starts made after the download, whether they are initiated through the Restart Target button in QWALive or by a call to ioap_hf_go(), will use the tuning file load order for RCS enabled.
Behavior when qcf_rcs is not defined
If the qcf_rcs parameter isn't defined in the io-acoustic configuration file, the QWALive Push to Target function will overwrite the contents of the tuning file at /tmp/hf_rcs_config.qcf. However, when the handsfree module is restarted, it will always use the tuning file load order for a system that doesn't have RCS enabled. This behavior allows you to save the tuning parameters to a file on the target for later reference.
Behavior when the qcf parameter is changed
If the tuning file defined by the qcf parameter is changed with a call to ioap_hf_config(), all starts after this change (initiated through the Restart Target button in QWALive or by a call to ioap_hf_go()) will use the tuning file load order for RCS not enabled.