yashsingh1/xdaforums huggingface dataset:
[Galaxy S I9000 Android Development] supercurio:
Wolfson WM8994 (product link) is totally capable of that :

# ReTune™ Mobile 5-band, 6-channel parametric EQ

# Programmable dynamic range controller

And with this compression, frequency measure could be altered too.

Hehe I understand your curiosity ;)

This is a very good question.

You're right, if a dynamics compression is applied, we may see different amplitude variation in source and output.

At first before messing with my phone i thought that multiband compression were here. But really subtle.

What do you think of this other procedure :

- generating a simple sweep tone, with constant amplitude

- recording the sweep tone with headphones attached

- watching the waveform. The waveform amplitude may be as constant as the source.

See ya MercuryStar !
[Galaxy S I9000 Android Development] }{Alienz}{:
This is getting interesting lol. And 56 ohms for small speakers? Yes. But we aren't talking speakers lmao :)

A tiny headphone shouldn't be that high but whatever, liek you said 124 db is a TON. I love around 100 but 100+ is too much sometimes. 124 is 6 times louder than 90 db I recall so even with that impedance it should pull some decent volume.

I'm waiting for a reply on my Samsung email too. And I'm starting to think its NOT a equalizer that we disabled.

Here's why.

The variables are called COEFFICIENTS...this usually implies something that is used to scale things, not a value by itself. Hence I think it does control the EQ but is NOT the actual EQ values. Just multipliers for the loudness/eq filter. This is confirmed cause they are extremely high values when you convert them to decimal and furthermore putting anything else than the default appears to do nothing (maybe I haven't found the "right" ones yet but I tried a few and NO difference of any sort in sound). Sigh.
[Galaxy S I9000 Android Development] Beast11:
I think the difference between 9 db and 12 should be about 300 times the intensity. And is it really noticable? The problem is mean...
[Galaxy S I9000 Android Development] supercurio:
Signal * 2 = +3 dB.

So 9dB to 12dB means the signal is multiplied per 2, = 2 times the intensity in volts.
[Galaxy S I9000 Android Development] supercurio:
Promising news

Allright folks !

Shaju Abraham respond to the mail I send, this was fast :)

He says that he is started to build the WM8994 Linux driver used on the Galaxy S a year ago (before Wofson themselves had a driver), but that many people have worked on it since last year.

He is on something else now, but offered to forward the mail to the team working on it now.

This is promising !

Anyway, yesterday night I started figuring out how the driver work.
[Galaxy S I9000 Android Development] }{Alienz}{:
<33333333!!!!! Supercurio that's GREAT NEWS!
[Galaxy S I9000 Android Development] fredphoesh:
Supercurio, your work on our phone is MUCH appreciated, we are lucky to have a crazy audiophile here who cares so much about this issue.

THANKS!

Mark.
[Galaxy S I9000 Android Development] emelie:
supercurio, thank you for your effort!
[Galaxy S I9000 Android Development] supercurio:
My friends, I have CRAZY GOOD NEWS :)

I'm really tired now but you'll have full details tomorrow !!
[Galaxy S I9000 Android Development] lethalfriend:
we'll wait for your crazy news with extra craziness :) at least give us a hint man...
[Galaxy S I9000 Android Development] kalpik:
OMG! CANT WAIT! You're so sick! Leaving us like this! I hate you! :P
[Galaxy S I9000 Android Development] supercurio:
hehe just one,

Your Galaxy S wille be able to drive the most demanding headphones

− or make your head explode :eek: −
[Galaxy S I9000 Android Development] hazamatic:
Hopefully we'll all have a great sounding phone soon.

Thanks supercurio!
[Galaxy S I9000 Android Development] furstrated:
lol that is one crazy long waiting.

hurry up with the fix
[Galaxy S I9000 Android Development] Adevem:
many thanks, I'll be waiting...
[Galaxy S I9000 Android Development] fudduf:
thanks for all your efforts, from another audiophile. :)
[Galaxy S I9000 Android Development] The.Opethian:
Thanks for the efforts, I too will be looking forward to the reply here. :)
[Galaxy S I9000 Android Development] slitch:
thank you so much for this fix!

Now I can finally enjoy music with my SH HD25. :)
[Galaxy S I9000 Android Development] }{Alienz}{:
Supercurio. I got a reply to my email also. Pasting below.

"Thank you for your interesting on our product.

This email address is just for open source request.

We suggest that you may send mail to technical support desk of your local samsung webpage.

( Please make use of Service for your product or Contact Us corner. )

But this case, I asked it our developer.

Next time, please contact technical support desk.

Our developer answered about your question as below.

*#197328640# command is a development use only and ''[5] Audio'' is only for speech quality.

It''s not a user menu. So, you should not change it.

If you change it, we not gurantee this effect.

I also asked headphone frequency issue to our H/W developer, and recieved the answer as blow.

If frequency is inside 5db, we judge to normal

We can''t provide any document about kernel source as you asked, because we not garantee that GalaxyS''s opensource is executable in target device.

I am afraid that I can''t give you a good news."

So they weren't terribly helpful BUT they basically DID say, if its +-5db, we don't even care, +-5db is "normal" which is quite terrible haha. Sadly they refused to give me the documentation.

Interestingly though it SAYS that menu we've been messing with is for SPEECH only. That explains why with the settings enabled we get curvy lines on the "equalizer". It's not an equalizer or a loudness filter. It's a filter designed to alter how voices sound. Hence, its trying to clear or enhance or whatever sound it deems is voice, LIKELY creating those curvy lines we see on the tests. Not sure if that's good news but it I think if its a dynamic process, it is possible some may hear the effect much more pronounced since it changes DEPENDING ON THE SOUND source and is not fixed. Hence the tests showing +0.4db gain may be wrong after all... Maybe its +0.4db gain only for that specific sound.

BTW: Your turn now, WHAT did you find out. I want a full post with juicy details.
[Galaxy S I9000 Android Development] THMRK:
Applied this and I still have the strange "phasing" effect on any audio of any quality using the samsung music player. I guess getting rid of my iPod is not going to be happening any time soon.

EDIT: I'm an idiot. Should have read the thread some more. I also noticed that these settings vanish on reboot (after applying it I rebooted) I'm interested in hearing what others have found out by emailing the relevant parties.

EDIT: 2, interestingly, with this applied the issue appears to remain when using the Rock EQ setting on the player. Almost as if it's certain frequencies are getting risen and lowered the louder the volume becomes.
[Galaxy S I9000 Android Development] milkaa13:
Hi

I tried this fix. But nothing happens when I dial:

*#*#197328640#*#*

I'm on fw: DDJG4.

Can anyone help?

Thanks.
[Galaxy S I9000 Android Development] }{Alienz}{:
Do other service apps work on it? Other numbers that start with *#*#

Supercurio: When will you update us with your breakthrough of a finding lol? I have been refreshing this all day way too often thinking you'll have some miracle posted lol.
[Galaxy S I9000 Android Development] Bhonka:
awesome!!!!
[Galaxy S I9000 Android Development] Raceves:
I'm scared to try this because I don't want my ears to blow up!
[Galaxy S I9000 Android Development] }{Alienz}{:
Very interesting. . .

Question though, when you got the really low noise setting, did you also half your volume in the process? Or how do you go about doing that?

Also for what you have so far, EXCELLENT work :)

Come the problem of figuring out saving is cleared and there won't be a need for an amp with in ears :)

PS: My FiiO just arrived and well, combined with the MixZing equalizer it is my dream come true. LOUD AS HELL, BASSY as HELL. I love it :)

It does introduce noise from the amp though at really low levels so its ideal for the car where that noise is drowned, with in ear headphones at low levels you can hear it.
[Galaxy S I9000 Android Development] milkaa13:
Funny I still do not get anything after installing samservmode.

Just shows a black black screen after opening up the app.
[Galaxy S I9000 Android Development] The.Opethian:
This is excellent news supercurio. I just recently flashed to JM5 and the default sound volume is surprisingly lower than the stock one I had (f/w from May2010).
[Galaxy S I9000 Android Development] Dopedangel:
I am not an audiophile and usually scratch my head when people talk about fidelity and audio quality

etc.

But even I noticed the difference between the quality of sound and I have to say wow

Thanks for this
[Galaxy S I9000 Android Development] hbvarun:
I have been waiting for this fix and now am not able to follow the procedure of getting this fix enabled.

There is busybox installed on my phone

when I run command through adb after gaining superuser access

busybox unzip -x /sdcard/alsa-utils-binaries.zip

Am getting

Options:

-l List archive contents (with -q for short form)

-n Never overwrite existing files (default)

-o Overwrite files without prompting

-p Send output to stdout

-q Quiet

-x Exclude these files

-d Extract files into this directory

am stuck here what do I do next

please help supercurio
[Galaxy S I9000 Android Development] supercurio:
Yeah, better be careful :p

You probably run a modified firmware that lacks the ServiceMode app.

You may report the issue to the ROM cooker, ServiceMode may never be removed from any Samsung device.

Interesting, i had change in volumes after installing several versions too.

How much lower you would say ?

If you're able to install alsa utils, it would be helpful to report the default volume for 'Playback Headset' on your device, thanks ;)

And thanks for the confirmation, that you don't need to have crazy equipment or ears to see the difference.

Samsung really needs to be aware of that !

Shoot !

Busybox's version of unzip use a non-standard syntax, and i just verified that it did not restore permissions like it should.

I'll modify the previous post in a minute.

Edit : done !
[Galaxy S I9000 Android Development] Kings Lee:
hey guys,

I have been following this since day 1 but I wasn't able to make any input until now... I saw something from head-fi.com forum (hope I am right, because I was away from my desktop computet) that you can use adb push audiofilter.txt /etc/ to set the service mode values on Samsung Galaxy (N.B. Galaxy, *** NOT galaxy S). Perhaps we can do something similar with ours...

I took a brief look at the audiofilter.txt I downloaded from that thread, and it is just similar to a csv file. I will add the link later when I get back.
[Galaxy S I9000 Android Development] FadeFx:
hehe, sound like we once will have an interface to alsa mixer on our devices and can controll the hardware instead of digital values... sweeeet
[Galaxy S I9000 Android Development] hbvarun:
supercurio bows to you.

This fix kicks off iphone

The only mobile phone which I had thought the best till date in audio is N91 which I had owned once, with this fix the audio is on par with it or even better.

The Loudness is awesome.

62 is the way to go

Now I need to make my iphone friends listen to the music on this.

Note: Am not using the bundled headsets, am using creative ep-630.

My first Samsung and I love everything about this phone.

Now waiting for the official FROYO
[Galaxy S I9000 Android Development] hbvarun:
Oh my excitement is short lived , I removed the headset and I plugged it back in and the sound is back to factory defaults.

I should have read the entire post

Supercurio the mod is perfect, somehow find a solution where we can make it permanent on the the phone
[Galaxy S I9000 Android Development] supercurio:
I had the exact same experience hbvarun :D
[Galaxy S I9000 Android Development] }{Alienz}{:
Me 3. Even though I read the entire post and knew it would do that, I somehow "hoped" i may be the lucky one where it doesn't haha. Supercurio, keep us posted regarding how to save it.
[Galaxy S I9000 Android Development] joplin48:
Problem with Headphones and Samsung Galaxy S

Hi

I really appreciate all the work that members of this board are putting in to fix this headphone problem.

I continue to check this board on a regular basis to see what the latest fix is.

My problem is I do not have the knowledge or the desire to try any of these fixes which are way over my head for fear of totally screwing up my phone and making it a useless brick.

If I wait I'm hoping that Samsung will release a firmware update that will fix this problem?:confused:

Thanks again for your continued work in this matter:cool:
[Galaxy S I9000 Android Development] supercurio:
I fully Agree that Samsung may fix the problem in their Firmwares.

But for the record, none of the methods described here are dangerous for your phone, and you have absolutely no risk to brick it.
[Galaxy S I9000 Android Development] }{Alienz}{:
We can't say the same about your hearing though :)

You phone may be fine, your ears won't be fine at 63 for too long.
[Galaxy S I9000 Android Development] supercurio:
Here is a sample of AudioFilter.txt file :

http://www.drakaz.com/FILES/TMP/AudioFilter.txt

This one was made to customize the Speaker level on Galaxy Spica

There is absolutely no reference to "AudioFilter" in the whole /system filesystem, so i'm quite pessimistic about it. Note that the the Froyo builds come with some .txt in /etc/audio, but they're useless too.

After a quick test : Putting an AudioFilter.txt in /etc has no effect, as I thought.

Indeed, this would be a very nice way to initialize the audio system at boot.

I won't look further with this AudioFilter.txt track, but If you think it's worth please do !

The whole point right now is to find where audio settings are stored and how to control them.

When you plug/unplug the jack connector, something append and this something is key !
[Galaxy S I9000 Android Development] }{Alienz}{:
OR it could be that we are not at all saving the values but merely putting them into the ram of the phone, Hence, when it plugs/unplugs it goes and looks for its saved values and ours are lost. EITHER way finding out WHERE the values are saved is key like you said haha.
[Galaxy S I9000 Android Development] THMRK:
So, just to clarify...if you apply this fix at 62 or 63 you shouldn't pump the volume up full in case of ear drum explodeyness?
[Galaxy S I9000 Android Development] }{Alienz}{:
That depends on how loud you are used to listening haha. If you go to clubs a lot or generally are USED to high volumes, go as high as you want lol :)

Otherwise, go as high as you're comfortable really. You will feel PAIN at a lot lower volume than your ear drum will explode at. HOWEVER, you WILL be damaging your ears at high volumes regardless of if you feel the pain (generally you will somewhat quickly). That goes for any kind of sound though. You travel on an airplane, you are damaging your ears :)

You live next to a highway, you damage your hearing.

You go to clubs or sports events, you are damaging your hearing.

Phone is not anything new. Supercurio told you to set to a max of 63 for the "fix" since after that, the phone starts distorting the sound...aka, its not clear anymore. The quality is killed since it cannot output it that loud due to physical limitations of the hardware. Nothing to do with your ears or ear drums lol.

Basically what I'm saying is:

NO, you won't blow your ear drums at any volume really. You will feel SHARP pain at much lower volumes which WILL make you stop listening. The phone is INCAPABLE of producing sound that is so loud though so you are safe.

For technical reference:

Ear drums can blow/rupture around 125-140db of volume.

The phone at FULL volume WITH the loudest fix setting can produce 90db.

That is a difference of 9 times in loudness. So if you were to listen to something which is at MINIMUM 9 TIMES louder than the loudest sound you can get out of the phone, then YES, your ear drums WILL blow. I WILL tell you this though. I have listened to music at 110 and 115db at clubs and whatnot and your head and ears FEEL SEVERE PAIN and afterwards "ring"...everything is "muffled and quiet" for up to several hours after hearing that. They don't blow though :)
[Galaxy S I9000 Android Development] THMRK:
Haha, I'm aware that the sound wouldn't be enough to make your ear drums physically burst, I was being flippant ;)

I'm used to extreme volumes, being in a band and such. Which has reminded me that I really need to buy earplugs...

EDIT: I'm slow. Never mind.
[Galaxy S I9000 Android Development] supercurio:
Actually 62 is the maximum I recommend.

63 is the maximum Analog hardware gain (0-63), and i measured distortions at this level.

At 62, signal quality is excellent;)

I still recommend runing other tests with your own hardware. Maybe my recording setup was just unable to manage such a high input level ;)
[Galaxy S I9000 Android Development] }{Alienz}{:
What did you use to measure "distortions"?

Or did you just listen for the distortions lol?
[Galaxy S I9000 Android Development] supercurio:
RightMark Analyzer (RMAA)

Easy to use and spot on each time ;)

I cannot produce these type of data with my my ears :D
[Galaxy S I9000 Android Development] cba1986:
vey noob question. Which application do you need to run those commands?
[Galaxy S I9000 Android Development] supercurio:
Right, I forgot :

you need the Android SDK.

One setup, you connect to the phone by adb shell

then use "su" to gain root privileges (needs rooted phone indeed)

PS : you'll find very good tutorials about installing sdk and running commands on the phone in this forum
[Galaxy S I9000 Android Development] dalingrin:
Since you guys are fooling with Alsa, has anyone tried editing .asoundrc/asound.conf

Does the amixer pull values from there?
[Galaxy S I9000 Android Development] lethalfriend:
if i am not wrong, we need to be in clockwork recovery mode to use adb commands?? or we can simply connect phone with usb and start using adb???
[Galaxy S I9000 Android Development] cba1986:
Thanks!!!

I will try this, when ihave the time. of course.
[Galaxy S I9000 Android Development] supercurio:
Nope. Only USB debugging activated is required, phone-side.

asound.conf only contains some names and routes, nothing about volumes or EQ ;)
[Galaxy S I9000 Android Development] supercurio:
need a service

Could you please do check this for me and report ?

cat /sys/devices/virtual/switch/h2w/state

- with headphones attached (here: 2)

- with stock earphones - mic attached (here: 1)

- connected to a line-in (here: 2)

- without anything plugged in the jack port

Thanks ;)
[Galaxy S I9000 Android Development] medimel:
Hi found same result too.

With nothing found 0.

Setting all permissions (not only write) denied keep the state alive.

U think we can force detection ??
[Galaxy S I9000 Android Development] Bhonka:
Cool, can also alter the recording volume of the mic when recording voice/video.

When using voice recorder, everytime you start or stop a recording the Capture gets reset to: 192 if you manually change the recording volume while recording.
[Galaxy S I9000 Android Development] fntms:
Nice!

The sound seems really improved at the higher settings...I seem to get clipping from 61 though...

I made a script to run it from the phone using root explorer...
[Galaxy S I9000 Android Development] lethalfriend:
can you share the script ??
[Galaxy S I9000 Android Development] fntms:
It's nothing really, just type

alsa_amixer set 'Playback Headset' 56

in a text editor and save as .sh

Root explorer can edit the scripts (I have a low volume and high volume setting...). The scripts must be placed at the root to work (in my case at least).
[Galaxy S I9000 Android Development] lethalfriend:
Thanks you so much :)
[Galaxy S I9000 Android Development] plemen:
Same values for me.
[Galaxy S I9000 Android Development] supercurio:
Nice, I may have an other Galaxy S for some hours this week end.

I'll make as much analysis as I can on it.
[Galaxy S I9000 Android Development] aleks07:
It should be simple enough to write a script that runs in background and changes the value to 60 every 2 sec or so. Here is an example below that I use now - I run it from a "Better Terminal", but it needs "su" first. If someone could make a wrapper or a schortcut, so we could run it directly from the main, it would be all I need for now.

#!/system/bin/sh

for i in 1 2 3

do

for i in a b c d e f g h i j k l m n o

do

alsa_amixer set 'Playback Headset' 60

sleep 2

done

done
[Galaxy S I9000 Android Development] }{Alienz}{:
You realize said script will MASSACRE your battery correct?
[Galaxy S I9000 Android Development] aleks07:
The goal here is to run it in parallel with a duration of you watching a movie or listening music, not all the time. Since the script mostly sleeps, I hope it won't use more power than your music player already does. Of course, if someone could find a permanent ROM fix solution it would be much better.
[Galaxy S I9000 Android Development] supercurio:
while true
do alsa_amixer set 'Playback Headset' 60
sleep 2
done

Still terrible, but just a tad less :D

PS : working on a custom kernel with fixed volume.
[Galaxy S I9000 Android Development] cba1986:
HOWTO

Now that you know the risks here is how to test the current progress :)

- Download the attached archive : alsa-utils-binaries.zip and put it on your internal sdcard.

- as root :

cd /
busybox tar zxvf /sdcard/alsa-utils-binaries.tar.gz.zip
alsa_amixer set 'Playback Headset' 56

[/QUOTE]

Sorry to be annoying, but when i paste this same command in adb shell with superuser access i get "invalid option" on adb.

I'm missing anything?
[Galaxy S I9000 Android Development] supercurio:
Not annoying at al ! this is a very good question ;)

Answer :

adb shell su -c alsa_amixer set 'Playback Headset' 56
[Galaxy S I9000 Android Development] cba1986:
sorry guys i am a bonehead. Still can't do it. There is too much window's blood in my vains. jaja

this is a screenshot:

Uploaded with ImageShack.us
[Galaxy S I9000 Android Development] NZtechfreak:
Supercurio - any chance you could update the first post in the thread with all the progress? Maybe start a new thread and reserve the first several posts for updates? Getting a bit long to trawl all the way through this thread for details...
[Galaxy S I9000 Android Development] supercurio:
Erf...

Nothing good here ^^

1/ your version of busybox is broken, change version

BusyBox v1.15.3 that came with my root is alright. Yours is badly compiled (lacks zlib to decompress files)

2/ you must press [enter] after each command

3/ su requires a user intervention to allow the execution as root

And come back ;)

NZtechfreak I will, as soon as we will have some significant progress !

Recent work is just a bloody messy hack.