Sunday, June 3, 2018

Sunday, May 20, 2018

Record in-flight audio with Samsung S8 phone

I am on my flight lessons, and one thing that's most challenging to me is to get the radio communication right. So I am thinking about recording the in-flight audio for me to review them afterward.

The simplest way is of course using my mobile phone. I have worked a bit on my headset before, so it is easy to pull audio from it. For my headset I bought a none working one off eBay and fixed it (replaced the battery and built a charger for it). So I paid a bit over $100 (and some sweat and my electronics know-how) for a nice noise cancellation headset that normally would run $400.

Back to the topic, it is easy to pull audio from it. To get that audio onto my mobile phone is not that trivial. I have a Samsung S8 which has a 3.5mm audio jack. I need to figure out which line the mic goes. Apparently there are two ways that the industry wire those jacks: OMTP and CTIA. These two web pages (Link1 and Link2) explained the difference.


But is my Samsung S8 an OMTP or CTIA? Both webpages seem to indicate that Samsung is in the OMTP camp. But this Reddit thread says with certainty that it is CTIA. So I am wiring it as CTIA.

It is also pretty obvious that the line level audio signal from the headphone is much stronger than what a mic would output. So I will definitely need to attenuate that. This can be done in a very simple way. Two resistors will make a working divider. An adjustable pot would be even better, but for now that will do.


However, when all is done, my recording app still does not record the audio from my headphone. Every recording seems to be from the on-phone mic. I tried various apps, some of them let me select the mic input source. But none of them has an option of external mic. What went wrong?

After some thinking, I think that the issue is that the phone did not recognize the external mic. I knew that some phone uses the impedance of the mic line to signal button pushes. I suspected the impedance, but most mic has impedance in the order of a hundred ohms or so. But after some Googling, it turns out that's exactly the issue. This xda-developers thread says that Samsung S8 detects external mic only when impedance is above 1K ohms. I tried it, and it turns out that I need about 2K ohms to have it recognized on my phone.

So a resistor is added to get the impedance in place, and everything works flawlessly there.