Author Topic: VoLTE calls  (Read 6931 times)

Zarhan

  • Sr. Member
  • ****
  • Posts: 378
    • View Profile
VoLTE calls
« on: February 19, 2020, 03:25:47 am »
Has anyone noticed any sound quality issues when doing VoLTE calls?

I've gotten a few comments from colleagues that I sound like "I'm talking from a bottom of a well". I then made a few test calls to my other phone and couldn't hear anything wrong in the sound. I also saved my voice using the builtin recorder and played it back, no issues.

Then it hit me - I had gotten the feedback from calls to my colleagues cellphones. So I tested with another guy and turned VoLTE off. They immediately said that yeah, now it's much better.

I'm still wondering whether it's just me ("That's what you really sound like?!") or if there's something actually wrong with the VoLTE encoder on the Cosmo.

Anyone else witnessed something similar?

maki.jouni

  • Full Member
  • ***
  • Posts: 100
    • View Profile
VoLTE calls
« Reply #1 on: February 19, 2020, 04:20:10 am »
Quote from: Zarhan
I've gotten a few comments from colleagues that I sound like "I'm talking from a bottom of a well".
Same thing here, colleagues said, that it sounds like I'm at bottom of well. I also disabled every new and shine features from calls, LTE and Wifi, Don't know yet is it better now.

Don't know ether is it country or carrier related issue. I'm from Finland and when that issue is occurred, Calls were with Slot 1 sim with Telia, Don't know is that same happening also with sim 2 and Elisa.
Cosmo Communicator (Fin/Swe), Mix2, Sony Xperia XZ & Z3, Nokia N900, Nokia PARSA, HTC Touch Pro, Qtek 9100, Nokia 6600 & 6210 & 2110, Mobira Talkman

Zarhan

  • Sr. Member
  • ****
  • Posts: 378
    • View Profile
VoLTE calls
« Reply #2 on: February 19, 2020, 04:42:35 am »
Quote from: maki.jouni
Don't know ether is it country or carrier related issue. I'm from Finland and when that issue is occurred, Calls were with Slot 1 sim with Telia, Don't know is that same happening also with sim 2 and Elisa.

My "well" experiences are with Elisa.

Zarhan

  • Sr. Member
  • ****
  • Posts: 378
    • View Profile
VoLTE calls
« Reply #3 on: February 19, 2020, 10:06:48 am »
Confirmed with a call to wife's Samsung (same telco). VoLTE off, better voice, even though it actually should be better with VoLTE on (well, with VoLTE it's essentially a VoIP call).

Reported this to Planet as well.

Zarhan

  • Sr. Member
  • ****
  • Posts: 378
    • View Profile
VoLTE calls
« Reply #4 on: February 21, 2020, 02:27:02 am »
Quote from: Zarhan
Confirmed with a call to wife's Samsung (same telco). VoLTE off, better voice, even though it actually should be better with VoLTE on (well, with VoLTE it's essentially a VoIP call).

Reported this to Planet as well.

Did a bit more testing. Seems to me that the problem is not actually with VoLTE. Turning it off does help, but more due to the artifacts of ANR codec.

The microphone's gain would need to be adjusted.

Unfortunately, I couldn't find any consistent way to change mic gain volume, even while rooted. Where are the mixer controls supposed to be? There is no /proc/mic_level, there doesn't seem to be a /system/etc/default_gain.conf...anyone know where to set the Microphone gain levels?

maki.jouni

  • Full Member
  • ***
  • Posts: 100
    • View Profile
VoLTE calls
« Reply #5 on: February 21, 2020, 03:00:48 am »
Same kind of well effect is still occured. Now I changed my old Plantronics Voyager Legend to another headset.
Cosmo Communicator (Fin/Swe), Mix2, Sony Xperia XZ & Z3, Nokia N900, Nokia PARSA, HTC Touch Pro, Qtek 9100, Nokia 6600 & 6210 & 2110, Mobira Talkman

Zarhan

  • Sr. Member
  • ****
  • Posts: 378
    • View Profile
VoLTE calls
« Reply #6 on: February 21, 2020, 04:27:40 am »
Quote from: maki.jouni
Same kind of well effect is still occured. Now I changed my old Plantronics Voyager Legend to another headset.

My experiences are not with a headset, just with the builtin mic. The sound quality as such is ok, it's just that the mixer level is ridicilously low.

I would "update" the ticket at Planet if they'd *have* a ticket system...

Zarhan

  • Sr. Member
  • ****
  • Posts: 378
    • View Profile
VoLTE calls
« Reply #7 on: February 21, 2020, 06:31:17 am »
In /vendor/etc there's audio_policy.conf file, that contains, amongst other things, items like

Code: [Select]
  devices {
      headset {
        type AUDIO_DEVICE_OUT_WIRED_HEADSET
        gains {
          gain_1 {
            mode AUDIO_GAIN_MODE_JOINT
            channel_mask AUDIO_CHANNEL_OUT_STEREO
            min_value_mB -6400
            max_value_mB 0
            default_value_mB 0
            step_value_mB 100
            min_ramp_ms 0
            max_ramp_ms 0
          }
        }
      }
      headphone {
        type AUDIO_DEVICE_OUT_WIRED_HEADPHONE
        gains {
          gain_1 {
            mode AUDIO_GAIN_MODE_JOINT
            channel_mask AUDIO_CHANNEL_OUT_STEREO
            min_value_mB -6400
            max_value_mB 0
            default_value_mB 0
            step_value_mB 100
            min_ramp_ms 0
            max_ramp_ms 0
          }
        }
      }
    }

Any idea if this would be the correct place to increase microphone gain?

Zarhan

  • Sr. Member
  • ****
  • Posts: 378
    • View Profile
VoLTE calls
« Reply #8 on: February 21, 2020, 01:05:33 pm »
I believe I found at least a partial solution, in engineering mode.

This is Mediatek-specific stuff.

Anyway, dial *#*#3646633#*#* on your phone to get to Engineering menu.

Swipe right until you get to "hardware testing".

Click on Audio.
Click on Volume.
Click on Voice.

You end up in menu with options "NB", "WB" and "SWB". I believe that NB refers to normal GSM codecs, and WB and SWB to VolTE.
Select either "Receiver" or "Speaker" to adjust Speaker mode or just plain headset.

Set UL gain to desired value and click on Set.
Repeat for all codec types (NB,WB,SWB).

Default seems to be 164.

I increased it to 252 and it *seems* to be better.

I also tested it with the lowest value acceptable - 72 - to confirm that this is not just a placebo effect. With 72, nothing could get through.

I'll have to test with a real person at some point. The fact that lowering the value takes my sound completely away I believe that the setting is at least correct.

The settings do seem to persist through a reboot. As such, if you change anything else, RECORD the values first! I don't know if they can be reset by e.g. flashing the image (and what portions), or where these values are even stored, or if they can be accessed via command line.

Zarhan

  • Sr. Member
  • ****
  • Posts: 378
    • View Profile
VoLTE calls
« Reply #9 on: February 24, 2020, 03:56:34 am »
Confirmed that setting the Microphone gain via engineering mode does indeed fix the issue.

I asked my colleagues who have most vocally complained that I'm very quiet whether it's better now. And both of them confirmed that yeah, it's much better. I don't think that they were just being nice.

Vistaus

  • Full Member
  • ***
  • Posts: 139
    • View Profile
VoLTE calls
« Reply #10 on: February 24, 2020, 05:37:56 am »
Thanks for the tip! I just changed it, let's wait and see

Btw, you may want to report your findings to Planet so that they can set this by default.

Zarhan

  • Sr. Member
  • ****
  • Posts: 378
    • View Profile
VoLTE calls
« Reply #11 on: February 24, 2020, 07:54:11 am »
Quote from: Vistaus
Btw, you may want to report your findings to Planet so that they can set this by default.

Done, although I really would have just preferred to update the other ticket I already opened rather than flood their "Smartsheet". I wish they'd have a public-facing issue tracker...

Zarhan

  • Sr. Member
  • ****
  • Posts: 378
    • View Profile
VoLTE calls
« Reply #12 on: March 26, 2020, 01:01:57 pm »
Note: These settings persisted through the update V19 => V20.

(Or another alternative is that Planet included the settings in the update, based on my report...)
« Last Edit: March 26, 2020, 01:02:12 pm by Zarhan »

Daniel W

  • Sr. Member
  • ****
  • Posts: 372
    • View Profile
VoLTE calls
« Reply #13 on: March 28, 2020, 01:57:04 pm »
Quote from: Zarhan
another alternative is that Planet included the settings in the update, based on my report...
No, they didn't. I just checked in egineering mode on my V20 Cosmo, and it still says 164. Thus, your settings persisted, which makes sense, as these settings reasonable are managed by the baseband modem.
« Last Edit: March 28, 2020, 03:10:38 pm by Daniel W »

Patrick H

  • Newbie
  • *
  • Posts: 2
    • View Profile
VoLTE calls
« Reply #14 on: June 30, 2020, 07:02:45 am »
Hi there!  I've been working this issue since my Cosmo arrived.  Although I'm new to Android, I've been doing Linux poorly for many years.  The solution here helps a bit, but seems to be missing the real problem as calls are still muffled (less so now), but I also notice a bit of audio clipping going on.  I suspect we are overdriving the mic pre-amp. I also noticed in the Phone App settings > accessibility > Noise Reduction, disabling it doesn't survive a reboot.

This issue extends to GSM calls also.  It is not a hardware issue as the sound recorder is clear and crisp.

I did an ADB pull of the /vendor folder and poured over all the related files I may be on to a solution.  (Thanks to Zarhan for the idea!)

in /vendor/etc/audio_param/Speech_ParamUnitDesc.xml :

[div class=\'codetop\']CODE[/div][div class=\'codemain\' style=\'height:200px;white-space:pre;overflow:auto\']         
         <Field name="TX NR Switch" array_index="4" bit="0,0"                                        check_list="0,off,1,on"/>
         <Field name="TX NR Quick learning" array_index="4" bit="1,1"                                check_list="0,quick,1,slow"/>
         <Field name="TX NR for high frequency" array_index="4" bit="8,8"                            check_list="0,on,1,off"/>
         <Field name="TX NR suppression strength" array_index="8" bit="6,8"                          check_list="0,23dB,1,20.5dB,2,18dB,3,15.5dB,4,13dB,5,10.5dB,6,8dB,7,off"/>
         <Field name="TX Adaptive gain control" array_index="4" bit="12,13"                          check_list="0,fixed 10 dB,1, fixed 0 dB,2,vary between 10 to 6dB, 3,vary between 10 to 0dB"/>
         <Field name="TX mute 1s" array_index="10" bit="1,1"                                         check_list="0,on,1,off"/>
         <Field name="TX Ambient noise calibration" array_index="8" bit="12,13"                      check_list="0,0dB,1,3dB,2,6dB,3,9dB"/>
         <Field name="TX Handfree Tone Detection" array_index="4" bit="9,9"                          check_list="0,off,1,on"/>
         <Field name="TX expander switch" array_index="3" bit="0,1"                                  check_list="0,off,1,suppress echo,2,suppress stationary noise,3,suppress non-stationary noise"/>
         <Field name="TX expander suppression gain" array_index="3" bit="4,5"                        check_list="0,3dB,1,9dB,2,12dB,3,15dB"/>
         <Field name="TX NR Noise Adaption Rate" array_index="4" bit="10,11"                         check_list="0,722ms,1,209ms,2,62ms,3,32ms"/>[/div]

After I finished chuckling about the code, I've been trying unsuccessfully to flip the high frequency bits.  But I'm pretty sure I'm onto it.  I'll start a new thread to address this and maybe get a fix in place.