Recording with BluetoothHeadset Mic












1














Hei there,



I m trying to make an App with Android-Studio that can record sound using a Bluetooth-HS.
I know there are a lot of posts close to this, but i tried all the answers and it wont work for me.
My code gives me back a filled bytebuffer, however testing proves, its always the Phones Mic not the Headset-Mic.
If anyone could take a look at my code and point out why it wont use the BT-HS, that would be a huge help for me.



public class Inhalation extends AppCompatActivity {
AudioManager audioManager;
AudioRecord audioRecord=null;
Button mrecord;
Button mpause;
boolean isRecording=false;
private Thread recordingThread = null;
private int bufferSize = AudioRecord.getMinBufferSize(8000,AudioFormat.CHANNEL_IN_MONO,AudioFormat.ENCODING_PCM_16BIT);

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_inhalation);
mrecord= findViewById(R.id.Button_Record_ID);
mpause=findViewById(R.id.Button_Pause_ID);
audioManager =(AudioManager) this.getSystemService(this.AUDIO_SERVICE);
}
//is supposed to start recording using the BT MIC. Can only be called if BTSCO is connected
private void startRecording() {

audioRecord = new AudioRecord(MediaRecorder.AudioSource.MIC, 8000, AudioFormat.CHANNEL_IN_MONO, AudioFormat.ENCODING_PCM_16BIT, bufferSize);
audioRecord.startRecording();
isRecording = true;
recordingThread = new Thread(new Runnable() {
public void run() {
writeAudioDataToFile();
}
}, "AudioRecorder Thread");
recordingThread.start();

}
//picks up the recorded audiobuffer and writes it into a file
private void writeAudioDataToFile() {

String filename="record";
byte saudioBuffer = new byte[bufferSize];
FileOutputStream os = null;

// TODO (4) Audiorecord Filecreation
try {
os = openFileOutput(filename, Context.MODE_PRIVATE);
} catch (FileNotFoundException e) {
e.printStackTrace();
Log.d("headset_rec","false filepath");
}

while (isRecording) {

audioRecord.read(saudioBuffer, 0, bufferSize);
try {
os.write(saudioBuffer, 0, bufferSize);
// os.write(saudioBuffer);
Log.d("headset_rec","writing"+saudioBuffer[0]);
} catch (IOException e) {
e.printStackTrace();
Log.d("headset_rec","writefail");
}
}
try {
os.close();
} catch (IOException e) {
Log.d("headset_rec","close");
e.printStackTrace();
}

}
//stops the recording
private void stopRecording() {
// stops the recording activity
if (null != audioRecord) {
isRecording = false;
audioRecord.stop();
audioRecord.release();
audioRecord = null;
recordingThread = null;
}
}
public void Record_On_Click(View view){
mpause.setEnabled(true);
mrecord.setEnabled(false);
requestRecordAudioPermission();
startRecording();
}

//Button to pause
public void Record_Pause_Click(View view){
stopRecording();
// readFromFile();
mrecord.setEnabled(true);
mpause.setEnabled(false);
}

//if BluetoothSCO is connected enables recording
private BroadcastReceiver mBluetoothScoReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
int state = intent.getIntExtra(AudioManager.EXTRA_SCO_AUDIO_STATE, -1);
System.out.println("ANDROID Audio SCO state: " + state);
if (AudioManager.SCO_AUDIO_STATE_CONNECTED == state) {
Log.d("SCOO","connected");
mrecord.setEnabled(true);
}
if(AudioManager.SCO_AUDIO_STATE_DISCONNECTED==state){
Log.d("SCOO","disconnected");
mrecord.setEnabled(false);
}
}
};

//connects to the bluetoothHeadset doing the following:
@Override
protected void onResume() {
// TODO (5) Bluetooth Mik
// Start Bluetooth SCO.
if(isRecording){
mpause.setEnabled(true);
mrecord.setEnabled(false);
}
IntentFilter intentFilter = new IntentFilter(AudioManager.ACTION_SCO_AUDIO_STATE_UPDATED);
registerReceiver(mBluetoothScoReceiver, intentFilter);
audioManager.setMode(audioManager.MODE_NORMAL);
audioManager.setBluetoothScoOn(true);
audioManager.startBluetoothSco();
// Stop Speaker.
audioManager.setSpeakerphoneOn(false);
super.onResume();
}

//Disconnects from the Bluetoothheadset doing the following
@Override
protected void onDestroy() {

audioManager.stopBluetoothSco();
audioManager.setMode(audioManager.MODE_NORMAL);
audioManager.setBluetoothScoOn(false);
// Start Speaker.
audioManager.setSpeakerphoneOn(true);
unregisterReceiver(mBluetoothScoReceiver);
super.onDestroy();
}
private void requestRecordAudioPermission() {//gets the permission to record audio
//check API version, do nothing if API version < 23!
int currentapiVersion = android.os.Build.VERSION.SDK_INT;
if (currentapiVersion > android.os.Build.VERSION_CODES.LOLLIPOP){

if (ContextCompat.checkSelfPermission(this, Manifest.permission.RECORD_AUDIO) != PackageManager.PERMISSION_GRANTED) {
Log.d("Activity_Request", "Wastn granted!");
// Should we show an explanation?
if (ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.RECORD_AUDIO)) {
Log.d("Activity_Request", "request!");
// Show an expanation to the user *asynchronously* -- don't block
// this thread waiting for the user's response! After the user
// sees the explanation, try again to request the permission.

} else {

// No explanation needed, we can request the permission.
Log.d("Activity_Request", "take!");
ActivityCompat.requestPermissions(this, new String{Manifest.permission.RECORD_AUDIO}, 1);
}
}
}
}









share|improve this question



























    1














    Hei there,



    I m trying to make an App with Android-Studio that can record sound using a Bluetooth-HS.
    I know there are a lot of posts close to this, but i tried all the answers and it wont work for me.
    My code gives me back a filled bytebuffer, however testing proves, its always the Phones Mic not the Headset-Mic.
    If anyone could take a look at my code and point out why it wont use the BT-HS, that would be a huge help for me.



    public class Inhalation extends AppCompatActivity {
    AudioManager audioManager;
    AudioRecord audioRecord=null;
    Button mrecord;
    Button mpause;
    boolean isRecording=false;
    private Thread recordingThread = null;
    private int bufferSize = AudioRecord.getMinBufferSize(8000,AudioFormat.CHANNEL_IN_MONO,AudioFormat.ENCODING_PCM_16BIT);

    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_inhalation);
    mrecord= findViewById(R.id.Button_Record_ID);
    mpause=findViewById(R.id.Button_Pause_ID);
    audioManager =(AudioManager) this.getSystemService(this.AUDIO_SERVICE);
    }
    //is supposed to start recording using the BT MIC. Can only be called if BTSCO is connected
    private void startRecording() {

    audioRecord = new AudioRecord(MediaRecorder.AudioSource.MIC, 8000, AudioFormat.CHANNEL_IN_MONO, AudioFormat.ENCODING_PCM_16BIT, bufferSize);
    audioRecord.startRecording();
    isRecording = true;
    recordingThread = new Thread(new Runnable() {
    public void run() {
    writeAudioDataToFile();
    }
    }, "AudioRecorder Thread");
    recordingThread.start();

    }
    //picks up the recorded audiobuffer and writes it into a file
    private void writeAudioDataToFile() {

    String filename="record";
    byte saudioBuffer = new byte[bufferSize];
    FileOutputStream os = null;

    // TODO (4) Audiorecord Filecreation
    try {
    os = openFileOutput(filename, Context.MODE_PRIVATE);
    } catch (FileNotFoundException e) {
    e.printStackTrace();
    Log.d("headset_rec","false filepath");
    }

    while (isRecording) {

    audioRecord.read(saudioBuffer, 0, bufferSize);
    try {
    os.write(saudioBuffer, 0, bufferSize);
    // os.write(saudioBuffer);
    Log.d("headset_rec","writing"+saudioBuffer[0]);
    } catch (IOException e) {
    e.printStackTrace();
    Log.d("headset_rec","writefail");
    }
    }
    try {
    os.close();
    } catch (IOException e) {
    Log.d("headset_rec","close");
    e.printStackTrace();
    }

    }
    //stops the recording
    private void stopRecording() {
    // stops the recording activity
    if (null != audioRecord) {
    isRecording = false;
    audioRecord.stop();
    audioRecord.release();
    audioRecord = null;
    recordingThread = null;
    }
    }
    public void Record_On_Click(View view){
    mpause.setEnabled(true);
    mrecord.setEnabled(false);
    requestRecordAudioPermission();
    startRecording();
    }

    //Button to pause
    public void Record_Pause_Click(View view){
    stopRecording();
    // readFromFile();
    mrecord.setEnabled(true);
    mpause.setEnabled(false);
    }

    //if BluetoothSCO is connected enables recording
    private BroadcastReceiver mBluetoothScoReceiver = new BroadcastReceiver() {
    @Override
    public void onReceive(Context context, Intent intent) {
    int state = intent.getIntExtra(AudioManager.EXTRA_SCO_AUDIO_STATE, -1);
    System.out.println("ANDROID Audio SCO state: " + state);
    if (AudioManager.SCO_AUDIO_STATE_CONNECTED == state) {
    Log.d("SCOO","connected");
    mrecord.setEnabled(true);
    }
    if(AudioManager.SCO_AUDIO_STATE_DISCONNECTED==state){
    Log.d("SCOO","disconnected");
    mrecord.setEnabled(false);
    }
    }
    };

    //connects to the bluetoothHeadset doing the following:
    @Override
    protected void onResume() {
    // TODO (5) Bluetooth Mik
    // Start Bluetooth SCO.
    if(isRecording){
    mpause.setEnabled(true);
    mrecord.setEnabled(false);
    }
    IntentFilter intentFilter = new IntentFilter(AudioManager.ACTION_SCO_AUDIO_STATE_UPDATED);
    registerReceiver(mBluetoothScoReceiver, intentFilter);
    audioManager.setMode(audioManager.MODE_NORMAL);
    audioManager.setBluetoothScoOn(true);
    audioManager.startBluetoothSco();
    // Stop Speaker.
    audioManager.setSpeakerphoneOn(false);
    super.onResume();
    }

    //Disconnects from the Bluetoothheadset doing the following
    @Override
    protected void onDestroy() {

    audioManager.stopBluetoothSco();
    audioManager.setMode(audioManager.MODE_NORMAL);
    audioManager.setBluetoothScoOn(false);
    // Start Speaker.
    audioManager.setSpeakerphoneOn(true);
    unregisterReceiver(mBluetoothScoReceiver);
    super.onDestroy();
    }
    private void requestRecordAudioPermission() {//gets the permission to record audio
    //check API version, do nothing if API version < 23!
    int currentapiVersion = android.os.Build.VERSION.SDK_INT;
    if (currentapiVersion > android.os.Build.VERSION_CODES.LOLLIPOP){

    if (ContextCompat.checkSelfPermission(this, Manifest.permission.RECORD_AUDIO) != PackageManager.PERMISSION_GRANTED) {
    Log.d("Activity_Request", "Wastn granted!");
    // Should we show an explanation?
    if (ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.RECORD_AUDIO)) {
    Log.d("Activity_Request", "request!");
    // Show an expanation to the user *asynchronously* -- don't block
    // this thread waiting for the user's response! After the user
    // sees the explanation, try again to request the permission.

    } else {

    // No explanation needed, we can request the permission.
    Log.d("Activity_Request", "take!");
    ActivityCompat.requestPermissions(this, new String{Manifest.permission.RECORD_AUDIO}, 1);
    }
    }
    }
    }









    share|improve this question

























      1












      1








      1







      Hei there,



      I m trying to make an App with Android-Studio that can record sound using a Bluetooth-HS.
      I know there are a lot of posts close to this, but i tried all the answers and it wont work for me.
      My code gives me back a filled bytebuffer, however testing proves, its always the Phones Mic not the Headset-Mic.
      If anyone could take a look at my code and point out why it wont use the BT-HS, that would be a huge help for me.



      public class Inhalation extends AppCompatActivity {
      AudioManager audioManager;
      AudioRecord audioRecord=null;
      Button mrecord;
      Button mpause;
      boolean isRecording=false;
      private Thread recordingThread = null;
      private int bufferSize = AudioRecord.getMinBufferSize(8000,AudioFormat.CHANNEL_IN_MONO,AudioFormat.ENCODING_PCM_16BIT);

      @Override
      protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_inhalation);
      mrecord= findViewById(R.id.Button_Record_ID);
      mpause=findViewById(R.id.Button_Pause_ID);
      audioManager =(AudioManager) this.getSystemService(this.AUDIO_SERVICE);
      }
      //is supposed to start recording using the BT MIC. Can only be called if BTSCO is connected
      private void startRecording() {

      audioRecord = new AudioRecord(MediaRecorder.AudioSource.MIC, 8000, AudioFormat.CHANNEL_IN_MONO, AudioFormat.ENCODING_PCM_16BIT, bufferSize);
      audioRecord.startRecording();
      isRecording = true;
      recordingThread = new Thread(new Runnable() {
      public void run() {
      writeAudioDataToFile();
      }
      }, "AudioRecorder Thread");
      recordingThread.start();

      }
      //picks up the recorded audiobuffer and writes it into a file
      private void writeAudioDataToFile() {

      String filename="record";
      byte saudioBuffer = new byte[bufferSize];
      FileOutputStream os = null;

      // TODO (4) Audiorecord Filecreation
      try {
      os = openFileOutput(filename, Context.MODE_PRIVATE);
      } catch (FileNotFoundException e) {
      e.printStackTrace();
      Log.d("headset_rec","false filepath");
      }

      while (isRecording) {

      audioRecord.read(saudioBuffer, 0, bufferSize);
      try {
      os.write(saudioBuffer, 0, bufferSize);
      // os.write(saudioBuffer);
      Log.d("headset_rec","writing"+saudioBuffer[0]);
      } catch (IOException e) {
      e.printStackTrace();
      Log.d("headset_rec","writefail");
      }
      }
      try {
      os.close();
      } catch (IOException e) {
      Log.d("headset_rec","close");
      e.printStackTrace();
      }

      }
      //stops the recording
      private void stopRecording() {
      // stops the recording activity
      if (null != audioRecord) {
      isRecording = false;
      audioRecord.stop();
      audioRecord.release();
      audioRecord = null;
      recordingThread = null;
      }
      }
      public void Record_On_Click(View view){
      mpause.setEnabled(true);
      mrecord.setEnabled(false);
      requestRecordAudioPermission();
      startRecording();
      }

      //Button to pause
      public void Record_Pause_Click(View view){
      stopRecording();
      // readFromFile();
      mrecord.setEnabled(true);
      mpause.setEnabled(false);
      }

      //if BluetoothSCO is connected enables recording
      private BroadcastReceiver mBluetoothScoReceiver = new BroadcastReceiver() {
      @Override
      public void onReceive(Context context, Intent intent) {
      int state = intent.getIntExtra(AudioManager.EXTRA_SCO_AUDIO_STATE, -1);
      System.out.println("ANDROID Audio SCO state: " + state);
      if (AudioManager.SCO_AUDIO_STATE_CONNECTED == state) {
      Log.d("SCOO","connected");
      mrecord.setEnabled(true);
      }
      if(AudioManager.SCO_AUDIO_STATE_DISCONNECTED==state){
      Log.d("SCOO","disconnected");
      mrecord.setEnabled(false);
      }
      }
      };

      //connects to the bluetoothHeadset doing the following:
      @Override
      protected void onResume() {
      // TODO (5) Bluetooth Mik
      // Start Bluetooth SCO.
      if(isRecording){
      mpause.setEnabled(true);
      mrecord.setEnabled(false);
      }
      IntentFilter intentFilter = new IntentFilter(AudioManager.ACTION_SCO_AUDIO_STATE_UPDATED);
      registerReceiver(mBluetoothScoReceiver, intentFilter);
      audioManager.setMode(audioManager.MODE_NORMAL);
      audioManager.setBluetoothScoOn(true);
      audioManager.startBluetoothSco();
      // Stop Speaker.
      audioManager.setSpeakerphoneOn(false);
      super.onResume();
      }

      //Disconnects from the Bluetoothheadset doing the following
      @Override
      protected void onDestroy() {

      audioManager.stopBluetoothSco();
      audioManager.setMode(audioManager.MODE_NORMAL);
      audioManager.setBluetoothScoOn(false);
      // Start Speaker.
      audioManager.setSpeakerphoneOn(true);
      unregisterReceiver(mBluetoothScoReceiver);
      super.onDestroy();
      }
      private void requestRecordAudioPermission() {//gets the permission to record audio
      //check API version, do nothing if API version < 23!
      int currentapiVersion = android.os.Build.VERSION.SDK_INT;
      if (currentapiVersion > android.os.Build.VERSION_CODES.LOLLIPOP){

      if (ContextCompat.checkSelfPermission(this, Manifest.permission.RECORD_AUDIO) != PackageManager.PERMISSION_GRANTED) {
      Log.d("Activity_Request", "Wastn granted!");
      // Should we show an explanation?
      if (ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.RECORD_AUDIO)) {
      Log.d("Activity_Request", "request!");
      // Show an expanation to the user *asynchronously* -- don't block
      // this thread waiting for the user's response! After the user
      // sees the explanation, try again to request the permission.

      } else {

      // No explanation needed, we can request the permission.
      Log.d("Activity_Request", "take!");
      ActivityCompat.requestPermissions(this, new String{Manifest.permission.RECORD_AUDIO}, 1);
      }
      }
      }
      }









      share|improve this question













      Hei there,



      I m trying to make an App with Android-Studio that can record sound using a Bluetooth-HS.
      I know there are a lot of posts close to this, but i tried all the answers and it wont work for me.
      My code gives me back a filled bytebuffer, however testing proves, its always the Phones Mic not the Headset-Mic.
      If anyone could take a look at my code and point out why it wont use the BT-HS, that would be a huge help for me.



      public class Inhalation extends AppCompatActivity {
      AudioManager audioManager;
      AudioRecord audioRecord=null;
      Button mrecord;
      Button mpause;
      boolean isRecording=false;
      private Thread recordingThread = null;
      private int bufferSize = AudioRecord.getMinBufferSize(8000,AudioFormat.CHANNEL_IN_MONO,AudioFormat.ENCODING_PCM_16BIT);

      @Override
      protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_inhalation);
      mrecord= findViewById(R.id.Button_Record_ID);
      mpause=findViewById(R.id.Button_Pause_ID);
      audioManager =(AudioManager) this.getSystemService(this.AUDIO_SERVICE);
      }
      //is supposed to start recording using the BT MIC. Can only be called if BTSCO is connected
      private void startRecording() {

      audioRecord = new AudioRecord(MediaRecorder.AudioSource.MIC, 8000, AudioFormat.CHANNEL_IN_MONO, AudioFormat.ENCODING_PCM_16BIT, bufferSize);
      audioRecord.startRecording();
      isRecording = true;
      recordingThread = new Thread(new Runnable() {
      public void run() {
      writeAudioDataToFile();
      }
      }, "AudioRecorder Thread");
      recordingThread.start();

      }
      //picks up the recorded audiobuffer and writes it into a file
      private void writeAudioDataToFile() {

      String filename="record";
      byte saudioBuffer = new byte[bufferSize];
      FileOutputStream os = null;

      // TODO (4) Audiorecord Filecreation
      try {
      os = openFileOutput(filename, Context.MODE_PRIVATE);
      } catch (FileNotFoundException e) {
      e.printStackTrace();
      Log.d("headset_rec","false filepath");
      }

      while (isRecording) {

      audioRecord.read(saudioBuffer, 0, bufferSize);
      try {
      os.write(saudioBuffer, 0, bufferSize);
      // os.write(saudioBuffer);
      Log.d("headset_rec","writing"+saudioBuffer[0]);
      } catch (IOException e) {
      e.printStackTrace();
      Log.d("headset_rec","writefail");
      }
      }
      try {
      os.close();
      } catch (IOException e) {
      Log.d("headset_rec","close");
      e.printStackTrace();
      }

      }
      //stops the recording
      private void stopRecording() {
      // stops the recording activity
      if (null != audioRecord) {
      isRecording = false;
      audioRecord.stop();
      audioRecord.release();
      audioRecord = null;
      recordingThread = null;
      }
      }
      public void Record_On_Click(View view){
      mpause.setEnabled(true);
      mrecord.setEnabled(false);
      requestRecordAudioPermission();
      startRecording();
      }

      //Button to pause
      public void Record_Pause_Click(View view){
      stopRecording();
      // readFromFile();
      mrecord.setEnabled(true);
      mpause.setEnabled(false);
      }

      //if BluetoothSCO is connected enables recording
      private BroadcastReceiver mBluetoothScoReceiver = new BroadcastReceiver() {
      @Override
      public void onReceive(Context context, Intent intent) {
      int state = intent.getIntExtra(AudioManager.EXTRA_SCO_AUDIO_STATE, -1);
      System.out.println("ANDROID Audio SCO state: " + state);
      if (AudioManager.SCO_AUDIO_STATE_CONNECTED == state) {
      Log.d("SCOO","connected");
      mrecord.setEnabled(true);
      }
      if(AudioManager.SCO_AUDIO_STATE_DISCONNECTED==state){
      Log.d("SCOO","disconnected");
      mrecord.setEnabled(false);
      }
      }
      };

      //connects to the bluetoothHeadset doing the following:
      @Override
      protected void onResume() {
      // TODO (5) Bluetooth Mik
      // Start Bluetooth SCO.
      if(isRecording){
      mpause.setEnabled(true);
      mrecord.setEnabled(false);
      }
      IntentFilter intentFilter = new IntentFilter(AudioManager.ACTION_SCO_AUDIO_STATE_UPDATED);
      registerReceiver(mBluetoothScoReceiver, intentFilter);
      audioManager.setMode(audioManager.MODE_NORMAL);
      audioManager.setBluetoothScoOn(true);
      audioManager.startBluetoothSco();
      // Stop Speaker.
      audioManager.setSpeakerphoneOn(false);
      super.onResume();
      }

      //Disconnects from the Bluetoothheadset doing the following
      @Override
      protected void onDestroy() {

      audioManager.stopBluetoothSco();
      audioManager.setMode(audioManager.MODE_NORMAL);
      audioManager.setBluetoothScoOn(false);
      // Start Speaker.
      audioManager.setSpeakerphoneOn(true);
      unregisterReceiver(mBluetoothScoReceiver);
      super.onDestroy();
      }
      private void requestRecordAudioPermission() {//gets the permission to record audio
      //check API version, do nothing if API version < 23!
      int currentapiVersion = android.os.Build.VERSION.SDK_INT;
      if (currentapiVersion > android.os.Build.VERSION_CODES.LOLLIPOP){

      if (ContextCompat.checkSelfPermission(this, Manifest.permission.RECORD_AUDIO) != PackageManager.PERMISSION_GRANTED) {
      Log.d("Activity_Request", "Wastn granted!");
      // Should we show an explanation?
      if (ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.RECORD_AUDIO)) {
      Log.d("Activity_Request", "request!");
      // Show an expanation to the user *asynchronously* -- don't block
      // this thread waiting for the user's response! After the user
      // sees the explanation, try again to request the permission.

      } else {

      // No explanation needed, we can request the permission.
      Log.d("Activity_Request", "take!");
      ActivityCompat.requestPermissions(this, new String{Manifest.permission.RECORD_AUDIO}, 1);
      }
      }
      }
      }






      android-studio audio-recording android-bluetooth






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Nov 18 '18 at 16:58









      flopflflopfl

      61




      61
























          0






          active

          oldest

          votes











          Your Answer






          StackExchange.ifUsing("editor", function () {
          StackExchange.using("externalEditor", function () {
          StackExchange.using("snippets", function () {
          StackExchange.snippets.init();
          });
          });
          }, "code-snippets");

          StackExchange.ready(function() {
          var channelOptions = {
          tags: "".split(" "),
          id: "1"
          };
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function() {
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled) {
          StackExchange.using("snippets", function() {
          createEditor();
          });
          }
          else {
          createEditor();
          }
          });

          function createEditor() {
          StackExchange.prepareEditor({
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader: {
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          },
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          });


          }
          });














          draft saved

          draft discarded


















          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53363331%2frecording-with-bluetoothheadset-mic%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown

























          0






          active

          oldest

          votes








          0






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes
















          draft saved

          draft discarded




















































          Thanks for contributing an answer to Stack Overflow!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid



          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.


          To learn more, see our tips on writing great answers.





          Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


          Please pay close attention to the following guidance:


          • Please be sure to answer the question. Provide details and share your research!

          But avoid



          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.


          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53363331%2frecording-with-bluetoothheadset-mic%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          How to send String Array data to Server using php in android

          Title Spacing in Bjornstrup Chapter, Removing Chapter Number From Contents

          Is anime1.com a legal site for watching anime?