I have a car Bluetooth FM transmitter that connects to my Android phone. The problem is that the transmitter’s microphone is very bad and people can hardly hear me when I make calls or use Google Assistant. I want to use my phone’s microphone instead of the transmitter’s microphone, but still use the transmitter’s speaker. Is there any way to do that? I tried looking for a setting to choose which microphone to use, but I couldn’t find any. My transmitter model is Car FM Transmitter W 2.4A USB Charger, Nulaxy™ 2015 Newest Wireless Bluetooth FM Transmitter Car Kit for All Smartphones, Tablets, MP3 Players. Any help would be appreciated. Thanks.

  • TheEighthDoctor@lemmy.world
    link
    fedilink
    English
    arrow-up
    3
    ·
    11 months ago

    I don’t think you can (easily), this is coded in the application itself so if you don’t have that option in the app settings there is nothing you can do(probably).

    Why do I say probably and easily? Because I think if you have a rooted device it’s possible to create a magisk module to hook itself to that method and change it (this is very technical)

    https://developer.android.com/reference/android/media/AudioRecord#setPreferredDevice(android.media.AudioDeviceInfo)

    • ruffsl@programming.dev
      link
      fedilink
      English
      arrow-up
      2
      ·
      11 months ago

      A while back, I tried looking into what it would take to modify Android to disable Bluetooth microphones for wireless headsets, allowing for call audio to be streamed via regular AAC or aptX, and for the call microphone to be captured from the phones internal mic. This would prevent the bit rate for call audio in microphone being effectively halved when using the ancient HFP/HSP Bluetooth codecs, instead allowing for the same call quality as when using a wired headset. This would help when multitasking with different audio sources, such as listening to music while hanging out on discord, without the music being distorted from the lower bit rate of HFP/HSP. This would also benefit regular VoLTE, as the regular call audio quality already exceeds that of legacy Bluetooth headset profiles.

      Although, I didn’t manage to tease apart the mechanics of the audio policy configuration files used by the source Android project, given the sparse documentation and vague commit history.

      I’d certainly be fine with the awkwardness of holding up and speaking to my phone as if it was in speaker mode, but listening to the call over wireless headphones, in order to improve or double the audio quality. Always wondered what these audio policies fall back to when a Bluetooth device doesn’t have a headset profile, but it’s almost impossible to find high quality consumer grade Bluetooth headphones without a microphone nowadays.

  • xodoh74984@lemmy.world
    link
    fedilink
    English
    arrow-up
    3
    ·
    11 months ago

    I’m not sure if this is a stock Android feature or Samsung specific, but I have the ability to disable using my cheap Bluetooth adapter for calls under Bluetooth settings for the device

    • ruffsl@programming.dev
      link
      fedilink
      English
      arrow-up
      2
      ·
      11 months ago

      For the call setting under Bluetooth audio devices, I really wish they would break out or separate the settings for using the audio device as a source or sink for call audio. Sort of like how you can disable HSP/HSF Bluetooth profiles for audio devices in Linux or Windows.

    • neil@lemdro.idOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      10 months ago

      This is what I thought of doing as well but didn’t works for me. Did you try it yourself?

      • xodoh74984@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        10 months ago

        Hm, yeah it works fine for me. I could never use the built-in mic on one of those cheap adapters

      • neil@lemdro.idOP
        link
        fedilink
        English
        arrow-up
        1
        ·
        10 months ago

        I tried this feature but it didn’t work. Did you manage to make a call while switching off the “Calls” in the Samsung phone setting?

    • NABDad@lemmy.world
      link
      fedilink
      English
      arrow-up
      4
      ·
      11 months ago

      A headset might be illegal to use in a car. Check your local laws.

      Looks like it would be legal in PA as long as it’s only one ear and it doesn’t block other sounds.

      • neil@lemdro.idOP
        link
        fedilink
        English
        arrow-up
        1
        ·
        10 months ago

        Yes, in most countries it is illegal to have a headset while driving.