User Tools

Site Tools


doc:appunti:linux:audio:audio_recording

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
doc:appunti:linux:audio:audio_recording [2020/12/28 09:55] – [External mic on the Acer Travelmate TMB113-E] niccolodoc:appunti:linux:audio:audio_recording [2020/12/28 18:22] (current) niccolo
Line 44: Line 44:
  
 A small movable **induction coil**, positioned in the **magnetic field** of a permanent magnet, is attached to the diaphragm. The sound wave moves the diaphragm and the coil moves in the magnetic field, producing a varying current in the coil through **electromagnetic induction**. No power is required: the current is carried directly on **two poles** to the mic input. These microphones generally have a **1/4" mono jack**. A small movable **induction coil**, positioned in the **magnetic field** of a permanent magnet, is attached to the diaphragm. The sound wave moves the diaphragm and the coil moves in the magnetic field, producing a varying current in the coil through **electromagnetic induction**. No power is required: the current is carried directly on **two poles** to the mic input. These microphones generally have a **1/4" mono jack**.
 +
 ==== Condenser ==== ==== Condenser ====
  
Line 56: Line 57:
 Unlike capacitor ones, electret microphones **do not require polarizing voltage**, but generally they contain an integrated preamplifier that **does require power**. In this cases a **TRS jack** can be used, where the ring carries power via a resistor from, normally, a 5 V supply in the computer (often incorrectly called //polarizing power// or //bias//). Generally these microphones built to be plugged into computers and electronic audio devices, have a **TRS 3.5 mm jack**, carrying the mic signal and the required current. Unlike capacitor ones, electret microphones **do not require polarizing voltage**, but generally they contain an integrated preamplifier that **does require power**. In this cases a **TRS jack** can be used, where the ring carries power via a resistor from, normally, a 5 V supply in the computer (often incorrectly called //polarizing power// or //bias//). Generally these microphones built to be plugged into computers and electronic audio devices, have a **TRS 3.5 mm jack**, carrying the mic signal and the required current.
  
-====== External mic on the Acer Travelmate TMB113-E ====== +====== Wireless UHF microphone ======
- +
-See this article about **[[audio_recording_tmb113_e]]**. +
- +
- +
-===== Problem: silence gaps using a cheap USB dongle ===== +
- +
-I was **unable to use the microphone connector** on my Acer TravelMate, so I tried to use an USB dongle, marked **LinQ**. The device was detected by the Linux Kernel 4.9.0: +
- +
-<code> +
-usb 2-1.3: new full-speed USB device number 9 using ehci-pci +
-usb 2-1.3: New USB device found, idVendor=0c76, idProduct=1607 +
-usb 2-1.3: New USB device strings: Mfr=0, Product=1, SerialNumber=0 +
-usb 2-1.3: Product: USB Headphone Set +
-input: USB Headphone Set as /devices/pci0000:00/0000:00:1d.0 +
-    /usb2/2-1/2-1.3/2-1.3:1.3/0003:0C76:1607.0004/input/input92 +
-hid-generic 0003:0C76:1607.0004: +
-    input,hidraw2: USB HID v1.00 Device [USB Headphone Set] +
-    on usb-0000:00:1d.0-1.3/input3 +
-</code> +
- +
-{{ linq-usb-audio.png?direct&100|LinQ USB audio dongle}} +
-The USB audio adapter worked quite nicely at playing audio, I use it on a QNAP TS-120 NAS, transformed into a media player installing Debian GNU/Linux on it. The Linux kernel and the **ALSA audio subsystem** works well on setting the levels for **playback**. +
- +
-Once started Audacity, I was able to select the microphone line of the USB dongle as a **capture device**: +
- +
-{{audacity-select-usb-audio.png?direct&260|}} +
- +
-Recording a sample track revealed an annoying problem: about **every 0.4 seconds** you can see a **gap of silence** in the audio track of about **two hundredths of a second**. The audio track is unusable! +
- +
-{{audacity-track-gaps.png?direct&400|}} +
- +
-===== Ugreen USB audio adapter ===== +
- +
-The device is detected by the Linux Kernel 4.9.0 in this way: +
- +
-<code> +
-usb 2-1.3: new full-speed USB device number 5 using ehci-pci +
-usb 2-1.3: New USB device found, idVendor=0d8c, idProduct=0024 +
-usb 2-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=0 +
-usb 2-1.3: Product: USB Advanced Audio Device +
-usb 2-1.3: Manufacturer: C-Media Electronics Inc. +
-input: C-Media Electronics Inc. USB Advanced Audio Device as /devices/pci0000:00/0000:00:1d.0 +
-    /usb2/2-1/2-1.3/2-1.3:1.3/0003:0D8C:0024.0004/input/input18 +
-hid-generic 0003:0D8C:0024.0004: +
-    input,hidraw2: USB HID v1.11 Device [C-Media Electronics Inc. USB Advanced Audio Device] +
-    on usb-0000:00:1d.0-1.3/input3 +
-</code> +
- +
-{{ ugreen-usb-audio.jpg?direct&220|Ugreen USB Audio Adapter}} +
- +
-Launching **alsamixer** and hitting F6 you can select the **USB Advanced Audio Device** sound card. Hit F4 to view the only one capture device, i.e. the microphone input line. Press **Space** to enable/disable the **capture** and **Up/Down arrows** to increase/decrease the **gain**. +
- +
-It seems that the best setting for audio recording through the mic, is to keep the **capture mic gain to 100**: +
- +
-{{usb-advanced-audio-device-alsamixer.png?direct&300|USB Advenced Audio Device in Alsamixer}} +
- +
-The **microphone socket** is a **3.5 mm TRS type** (three poles), it provides a bias current of **2.6 V** on both the **tip** and the **ring**, so it is advisable, as reported in the device manual, to **NOT use a simple two poles mono jack** (TS type), because it will short-circuit the bias current on the ring with the ground on the sleeve. +
- +
-===== Wireless UHF microphone =====+
  
 We have purchased an **UHF wireless microphone** on Aliexpress.com for about 25 €. It is composed by: We have purchased an **UHF wireless microphone** on Aliexpress.com for about 25 €. It is composed by:
Line 146: Line 88:
 The **2.6 volt** current provided by the USB adapter on th **jack ring** will go nowhere (not connected). The **2.6 volt** current provided on the **jack tip** is probably not required by the UHF receiver, but **it should not harm**. **No infromation** is available about **microphone impedence** expected by the USB adapter, on the other hand no information is available about the **impedence of the mic interface** of the UHF receiver. The **2.6 volt** current provided by the USB adapter on th **jack ring** will go nowhere (not connected). The **2.6 volt** current provided on the **jack tip** is probably not required by the UHF receiver, but **it should not harm**. **No infromation** is available about **microphone impedence** expected by the USB adapter, on the other hand no information is available about the **impedence of the mic interface** of the UHF receiver.
  
-Despite all this empirical approach, the **voice registration is quite satisfying**! +Despite all this empirical approach, the **voice registration is quite satisfying**! See below about connecting the microphone to an Acer TravelMate notebook an to an Android smartphone.
-====== Audio Recording With Android ======+
  
-Recording audio using an **external microphone** connected to an **Android device** can be a real nightmare. We tried the hard way using a Chinese, no-brand, **wireless UHF microphone**!+===== Wireless mic on the Acer Travelmate TMB113-E =====
  
-We can group the problems you can face in three main categories:+See this article about **[[audio_recording_tmb113_e]]**.
  
-  * Physical connection +===== Wireless mic on Android =====
-  * Electrical compatibility and hardware autodetection +
-  * Software capabilities and settings+
  
-===== Physical connection =====+See this article about **[[audio_recording_android]]**.
  
-{{ android-external-mic.jpg?260|Connecting a Wireless Microphone to an Android Smartphone}} +===== Wireless mic on Ugreen USB audio adapter =====
-Most Android devices have a **3.5 mm jack** accepting a **TRRS connector in CTIA standard** and every brand of mobile phones produces **headsets** with their own standard. The vast majority of solutions uses **electret microphones** requiring a **bias current**, but use **some combinations of impedence** to detect the insertion of the microphone and to **handle the headset button** (or buttons).+
  
-So, connecting an external microphone, can be as simple as making a cable that connects the **ring** and the **sleve** of the **CTIA connector** to (respectively) the **ground** and the **microphone line** of the microphone. The hard part is to guess, or empirically try, if the microphone **requires a bias current**, if the Android device is provinding such a current and if the microphone produces a sufficient **output level** (actually a voltage in the order of the millivolts) that can be used by the device.+See this article about **[[audio_recording_usb_adapter]]**.
  
-===== Electrical compatibility and hardware autodetection =====+====== Problem: silence gaps using a cheap USB dongle ======
  
-As stated above, the first problem is **powering the microphone** itselfbecause generally we will use an **electret** one. It is a **common practice** to provide the power on the same line of the microphone signalso **requiring just two wires** for both power (from the device to the mic) and for signal (from the mic to the device). The power, also called //bias current//, is generally in the range of **2.5** to **5.0 volt**.+I was **unable to use the microphone connector** on my Acer TravelMateso I tried to use an USB donglemarked **LinQ**. The device was detected by the Linux Kernel 4.9.0:
  
-On a Xiaomi Mi A1 smartphone, which has a **TRRS 3.5 mm jackCTIA standard**we measured a bias current of **2.19 volt** between the microphone (sleeve) and the ground (ring).+<code> 
 +usb 2-1.3: new full-speed USB device number 9 using ehci-pci 
 +usb 2-1.3: New USB device foundidVendor=0c76idProduct=1607 
 +usb 2-1.3: New USB device strings: Mfr=0, Product=1, SerialNumber=0 
 +usb 2-1.3: Product: USB Headphone Set 
 +input: USB Headphone Set as /devices/pci0000:00/0000:00:1d.0 
 +    /usb2/2-1/2-1.3/2-1.3:1.3/0003:0C76:1607.0004/input/input92 
 +hid-generic 0003:0C76:1607.0004: 
 +    input,hidraw2: USB HID v1.00 Device [USB Headphone Set] 
 +    on usb-0000:00:1d.0-1.3/input3 
 +</code>
  
-Another parameter which should be considered is the **impedence**, but unfortunatelly it is generally **impossibile to find documentation** about what is expected by the smartphone and what is offered by the microphone.+{{ linq-usb-audio.png?direct&100|LinQ USB audio dongle}} 
 +The USB audio adapter worked quite nicely at playing audio, I use it on a QNAP TS-120 NAS, transformed into a media player installing Debian GNU/Linux on it. The Linux kernel and the **ALSA audio subsystem** works well on setting the levels for **playback**.
  
-===== Software capabilities and settings =====+Once started Audacity, I was able to select the microphone line of the USB dongle as a **capture device**:
  
-Wishing to connect the **UHF microphone** to an **Android smartphone**, we prepared an **adapter cable**From 3.5 mm jack TRRS male to 1/4" jack TS female, with this pinout:+{{audacity-select-usb-audio.png?direct&260|}}
  
-^ 1/4" TS female jack  ^ Signal         ^ 3.5 mm TRRS male jack (CTIA) +Recording a sample track revealed an annoying problem: about **every 0.4 seconds** you can see a **gap of silence** in the audio track of about **two hundredths of a second**. The audio track is unusable!
-|                      | Not connected **Tip**                       | +
-|                      | Not connected **Ring**                      | +
-**Sleeve**           | Ground         | **Ring**                      | +
-| **Tip**              | Microphone     | **Sleeve**                    |+
  
-The smartphone **did not sensed the microphone**, there is not much documentation about it, but it seems that the **autodetection** of the microphone is **based upon the impedence** of the mic itself, if it is too low, it is not detected. +{{audacity-track-gaps.png?direct&400|}}
- +
-Once completed the electrical connection and acknowledged that **automatic detection of the external microphone does not work**, I decided to use the **[[https://play.google.com/store/apps/details?id=com.nordskog.LesserAudioSwitch|Lesser AudioSwitch]]** app, which allows switching between the internal speaker/microphone and the external headset/mic by a button tap. +
-  +
-To realize the electrical connection explained in the above table, I used a **mic/headphone splitter cable**: the CTIA 4-poles male jack goes into the smartphone, the headphone female jack is left unconnected, the mic female Jack is connected to a **self-made adapter cable** featuring a 3.5 mm TRS male jack and a 1/4" TS female jack. Finally the UHF receiver is connected using the 1/4" jack. +
- +
-To record audio I used the **[[https://f-droid.org/en/packages/com.github.axet.audiorecorder/|Audio Recorder]]** v.3.3.11 app from the F-Droid repository (free software, GPLv3 license). Into the Settings menu I choosed the **Unprocessed** recording source instead of mic, this gives raw audio data, without automatic gain applied etc. (see [[https://developer.android.com/guide/topics/media/mediarecorder|Android MediaRecorder overview]]). +
- +
-The resulting recording is quite good: a **48 kHz 16 bits** file with good sound quality and low noise.+
  
-===== Web References =====+====== Web References ======
  
   * [[wp>Microphone]]   * [[wp>Microphone]]
doc/appunti/linux/audio/audio_recording.1609145713.txt.gz · Last modified: 2020/12/28 09:55 by niccolo