audio recording problem - Nokia 8 Questions & Answers

hi
as you all know, nokia 8 comes with OZO audio and has 3 microphones instead of 2
but the problem with it is that no app can use the OZO audio system properly. I've used a lot of audio recording programs, and all of them are having problems. When recording audio in stereo, first few seconds are fine, but the rest goes under heavy noise reduction and audio gain control that ruins the audio completely. now my question is whether it's possible to turn the noise reduction off somehow by tinkering with system parameters or not? my phone is rooted and I'm using android pie.

Related

[Q] Active noise cancellation with dedicated mic - How does it works???

I use my note to record some shows as I used to do with my xperia neo, but the recording sound is horrible. So I would like to know if this ''noise cancellation'' works to record videos with loud sound
You can use programs like Audacity to clean the noise from the recorded audio.
http://en.wikipedia.org/wiki/Noise-canceling_microphone
You have noisy recordings because active noise cancellation is not used during recording. Also, this type of noise control method doesn't work well with distant sound sources (too less of a difference between the audio received by the mics).
SoliCall said:
You can use programs like Audacity to clean the noise from the recorded audio.
Click to expand...
Click to collapse
But it really works ??? Will I have a clean sound??

Possible workaround for a noisy mic

The microphone for the Nexus 4 is very noisy. A user on another thread described a video he recorded
to sound as if it was "recorded underwater".
I looked up the Android SDK and the MediaRecorder object has access to the following audio streams:
CAMCORDER, DEFAULT, MIC, VOICE_CALL, VOICE_COMMUNICATION, VOICE_DOWNLINK, VOICE_RECOGNITION, VOICE_UPLINK.
http://developer.android.com/reference/android/media/MediaRecorder.AudioSource.html
I noticed that while audio and video recorders sound bad on Nexus4, voice calls are of decent quality.
Not all phones have the hardware to handle all these so most sound recorders use MIC or DEFAULT.
I found the source code to the MIUI Sound Recorder and it was easy to add a setting that lets you
manually select which hardware stream to record from.
I ran some tests on the Nexus 4 and came to the following conclusions:
- MIC, DEFAULT and VOICE RECOGNITION are probably the same stream and sound bad.
- the CAMCORDER audio stream is the cleanest.
I propose that until Google and LG fix this issue ROM developers alter the Android API on Nexus 4 (only)
so that the CAMCORDER stream always overwrites MIC and DEFAULT.
I'm attaching the modified MIUI Sound Recorder with manual stream select if anyone wants to do
tests on their own. Here's an amplified view of MIC vs CAMCORDER.
-Mindroid- said:
The microphone for the Nexus 4 is very noisy. A user on another thread described a video he recorded
to sound as if it was "recorded underwater".
I looked up the Android SDK and the MediaRecorder object has access to the following audio streams:
CAMCORDER, DEFAULT, MIC, VOICE_CALL, VOICE_COMMUNICATION, VOICE_DOWNLINK, VOICE_RECOGNITION, VOICE_UPLINK.
http://developer.android.com/reference/android/media/MediaRecorder.AudioSource.html
I noticed that while audio and video recorders sound bad on Nexus4, voice calls are of decent quality.
Not all phones have the hardware to handle all these so most sound recorders use MIC or DEFAULT.
I found the source code to the MIUI Sound Recorder and it was easy to add a setting that lets you
manually select which hardware stream to record from.
I ran some tests on the Nexus 4 and came to the following conclusions:
- MIC, DEFAULT and VOICE RECOGNITION are probably the same stream and sound bad.
- the CAMCORDER audio stream is the cleanest.
I propose that until Google and LG fix this issue ROM developers alter the Android API on Nexus 4 (only)
so that the CAMCORDER stream always overwrites MIC and DEFAULT.
I'm attaching the modified MIUI Sound Recorder with manual stream select if anyone wants to do
tests on their own. Here's an amplified view of MIC vs CAMCORDER.
Click to expand...
Click to collapse
I modified my kernel to fix this and I used your apk to test for both mic and camcorder and I don't notice the difference with my updated kernel.
http://faux.androidro.ms/mako/beta/mako-jb-kernel-004b06.zip
check for me to see if I really fix it or not since I am not an audio expert
Thank you, faux!
I've been meaning to try your kernel for a while so now I just have to.
Please treat my ideas about how Android exposes the audio stream as a speculation for now.
I didn't run any in-depth tests and I didn't trace the kernel code.
To my ears the MIC/DEFAULT streams are very noisy. The CAMCORDER one is noisy also
and but somewhat less so. They all sound bandpassed (probably a microphone limitation).
I'd like to know what other users think of the sound.
Very interesting.
I agree that N4 mic is so sensitive that it picks up a lot of background noises. I have been tweaking with mic volume to offset it.
If OP is true, then there's a hope for VoIP users who use Csipsimple. Without changing the kernel, csip can use CAMCORDER mode by changing the settings under media>audio troubleshooting.
The very high mic gain is the main issue with the sound quality. It needs to be adjusted from
the kernel driver which is not a trivial procedure. Gain from apps works on top of the hardware
gain and does not affect distortion that happens earlier in the signal chain.
One user put scotch tape on the mic to mechanically attenuate the sound and reported good results.
If the the sound system on the nexus 4 is built on top of ALSA, I.e. if the directory /proc/asound exists, then microphone levels can be adjusted in user-space. There is an app (ALSAMixer) available on the market that could be used here.
What would be the effect of covering the mic with something to reduce it's sensitivity?
chdloc said:
If the the sound system on the nexus 4 is built on top of ALSA, I.e. if the directory /proc/asound exists, then microphone levels can be adjusted in user-space. There is an app (ALSAMixer) available on the market that could be used here.
Click to expand...
Click to collapse
I'm not sure if that will do it. The textbook audio recording chain goes like this:
microphone -> preamp -> analog-to-digital converter
If I'm not mistaken ALSA(the driver) will take over afterwards. We need a way to control
the hardware gain on the preamp. It's possible that preamp gain is permanently fixed by design.
On the other hand almost all modern preamps have automatic variable gain so it might just be
a matter of figuring out how to turn it on.
EDIT:
ALSAMixer doesn't work at all on my phone (stock 4.2.1 - rooted)
Do you know of any custom kernels for the Nexus4 that use ALSA?
donec said:
What would be the effect of covering the mic with something to reduce it's sensitivity?
Click to expand...
Click to collapse
Aside from the ugly look it should work OK. I would suggest using some kind of soft thread fabric.
Wool is one of the best materials for sound absorption but you should try different materials.
The downside is that mechanical methods don't attenuate all frequencies linearly - they work much better
on higher frequencies so you will have to try and see what material works best.
If this works out it would be ideal to open the phone and plug the microphone hole on the inside with the proper material.
I don't have a Nexus 4, but I do know that the Nexus 7 uses ALSA. Have you checked for /proc/asound? If it exists, then you may need the proper ALSA libraries first.
Sent from my Nexus One using xda app-developers app
im starting to think LG just used cheap mics to keep cost down. From the buzzing to the sub par recording quality
-Mindroid- said:
Aside from the ugly look it should work OK. I would suggest using some kind of soft thread fabric.
Wool is one of the best materials for sound absorption but you should try different materials.
The downside is that mechanical methods don't attenuate all frequencies linearly - they work much better
on higher frequencies so you will have to try and see what material works best.
If this works out it would be ideal to open the phone and plug the microphone hole on the inside with the proper material.
Click to expand...
Click to collapse
I have my Nexus 4 in a case and thought maybe I could improve the quality by placing a piece of cloth between the case and the phone.
Lockeskidney said:
im starting to think LG just used cheap mics to keep cost down. From the buzzing to the sub par recording quality
Click to expand...
Click to collapse
The specs for the microphone do not look bad either. http://www.knowles.com/search/prods_pdf/SPU0410LR5H.pdf is the spec sheet and it should be working to 116 dB, which is louder than I'd want to be in - though it is only the loud end of rock concerts. Noise also looks okay on the spec sheet, but you cannot expect Schoeps quality of course..
The underwater sounds I'm hearing with the sound recording tool remind me of processing, heavy compression andf such. Not what I heard on my camcorder tests, which had a pleasant sound.
Overload is more likelely to be caused by audio codec settings. A voice call has the mouth close to the mic, that is loud too, and works well. But applications like movie recordings crank up the gain to record sounds further away.
jutezak said:
The specs for the microphone do not look bad either. http://dl-bacon.bbqdroid.org/GeebCM/EN_LG-E973_SVC_ENG_121127.pdf is the spec sheet and it should be working to 116 dB, which is louder than I'd want to be in. Noise also looks okay on the spec sheet, but you cannot expect Schoeps quality of course..
The underwater sounds I'm hearing with the sound recording tool remind me of processing, heavy compression andf such. Not what I heard on my camcorder tests, which had a pleasant sound.
Overload is more likelely to be caused by audio codec settings. A voice call has the mouth close to the mic, that is loud too, and works well. But applications like movie recordings crank up the gain to record sounds further away.
Click to expand...
Click to collapse
Nice find! Thank you for sharing!
Microphones in general are almost never bad. It's the preamps and digital processing that add more to the mix.
Regarding the "underwater" sound I now suspect a lack of a Low Pass filter. Check out my other thread:
http://forum.xda-developers.com/showpost.php?p=36856100&postcount=18
jutezak said:
The specs for the microphone do not look bad either. http://www.knowles.com/search/prods_pdf/SPU0410LR5H.pdf is the spec sheet and it should be working to 116 dB, which is louder than I'd want to be in - though it is only the loud end of rock concerts. Noise also looks okay on the spec sheet, but you cannot expect Schoeps quality of course..
Click to expand...
Click to collapse
Human speech can generate 116dB SPL measured at 1-2" distance fairly easily. I just measured the level my speech at 1" distance (with a lab-grade device) and I did not have to shout to produce 116dB SPL. The spec sheet says that the microphone produces about 10% THD typically at 118SPL for a 1kHz tone.
jutezak said:
Overload is more likelely to be caused by audio codec settings. A voice call has the mouth close to the mic, that is loud too, and works well. But applications like movie recordings crank up the gain to record sounds further away.
Click to expand...
Click to collapse
Distortion of the microphone signal is generated (or amplified) in at least four locations:
1. The microphone itself (analog or digital if the microphone is a digital microphone as many MEMS are; the above referenced Knowles mike is analog)
2. The amplifier (analog)
3. The analog-to-digital converter (ADC) which is spec'ed with a maximum input voltage to generate a signal that hits "digital rail", i.e. 0dB FS (full-scale)
4. digital gain along the digital processing path
Potential "clipping" (i.e. signals producing 0dB FS at the ADC) can only be avoided if the analog amplifier (if there is one) can be controlled. By looking at the ALSA mixer settings for the Nexus 4 my only hope lies in the controls that are labeled "ADCX Volume" where X=[1,6], i.e. numid. I believe -Mindroid- shared his "idle" settings vs. settings during a call and only X={1,3}, i.e. numid={48,50} have changed. Give changing those two parameters a try...
I posted this in a different thread, but thought it would be useful here as well as a potential lead to a workaround:
Looks like the audio chip in question is a Qualcomm WCD9310.
It's used in a few other devices as well (eg: GS3 USA). If their audio runs fine, perhaps we could try running their audio drivers on our device?

Audio on Nokia 8

I was wondering if it is just me, but these are the issues my Nokia 8 has:
-media volume control starts at 40%, so wired headphones are way too loud even on lowest setting
-Bluetooth audio quality is just horrible, with hisses and buzzing,same headphones work fine with other devices
-hiss while using external speaker. Every time a sound is output, there will be a hiss/buzz that continues for a couple seconds after sound output stops
Any experiences with that? And more importantly, any fix?
legas said:
I was wondering if it is just me, but these are the issues my Nokia 8 has:
-media volume control starts at 40%, so wired headphones are way too loud even on lowest setting
-Bluetooth audio quality is just horrible, with hisses and buzzing,same headphones work fine with other devices
-hiss while using external speaker. Every time a sound is output, there will be a hiss/buzz that continues for a couple seconds after sound output stops
Any experiences with that? And more importantly, any fix?
Click to expand...
Click to collapse
It must be your phone only.
I've no issues with audio at all.
Audio quality over Bluetooth is really good, much better than any other phone I've owned.

Youtube audio output (speaker and headphone) is much quieter than other apps

Hi all,
Been using a P20 Pro for nearly 2 weeks and the only issue I have is the volume in YouTube app - its too low when set to max.
When using the loudspeaker and headphones (usb-c to 3.5mm adapter) on both the volume output is not particularly loud. Other apps such as tiktok or even the music player give loud audio output but not the YouTube app.
I turned off the battery optimization but this didn't make a difference. Similarly played around with the atmos setting and doesn't make a difference.
Compared to my S7 Edge, the P20 Pro cannot be heard using YouTube and loudspeaker with side by side tests.
It seems to be a software issue - has anyone else noticed this?
someone check for me please, im using EMUI 9.1.0
I think it's due to music player supporting Dolby Atmos while other apps can't. Can confirm YouTube plays at lower volume than Music player, not sure about Tik Tok as I haven't used that.

[HELP] Bluetooth not working for app sound but working fine for musics

When I connect my Bluetooth earphones to my XZ2, musics and videos play just fine.
But when it comes to eventful sound (e.g. notification sound, words reading out by clicking in dictionary app or Duolingo, sound effect in games etc. ), it doesn't work reliably. Sometimes it plays the sound, sometimes it doesn't, sometimes it plays only part of the sound. And the sound level varies inspite of the same settings.
I am sure that the earphones are not broken as I tested them with my retired Nexus 6 and the above issue doesn't happen.
I also noted that every time I change the Bluetooth AVRCP version, the first eventful sound would be successfully played but the subsequent eventful sound will not be played. And I cannot change the Bluetooth audio codec from "Streaming: Disable optional codecs), it will automatically spring back after switching to other apps.
I would be thankful if anyone could shed some light on this issue.

Categories

Resources